아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

최종 순위

시간 제한1초메모리 제한128 MB

요약
학생 n명의 총점 p와 상위 k명의 서로 다른 점수 개수 d가 주어질 때, 음이 아닌 정수로 이루어진 비오름차순 점수 목록 중 사전순으로 가장 큰 것을 출력하고, 불가능하면 Wrong information을 출력한다.
난이도

보통10점 중 6점

유형
그리디, 구현, 수학, 완전 탐색
정답자
아직 제출이 없습니다

문제

홍준이는 어느 고등학교의 수학 선생님이다. 기말고사에 학생 nn명이 응시했고, 점수가 높은 학생일수록 등수가 높다.

채점은 모두 끝났지만, 홍준이는 학생들에게 두 가지 정보만 알려 주었다.

  • 모든 학생의 점수의 합은 pp이다.
  • 등수가 높은 상위 kk명의 점수를 보았을 때, 서로 다른 점수의 개수는 정확히 dd이다.

각 학생의 점수는 00 이상의 정수이며, 등수가 높은 학생부터 차례로 나열하면 점수는 넓은 의미로 감소한다(같은 점수도 허용된다). 위 정보와 맞아떨어지는 점수 배열을 구하시오.

조건을 만족하는 배열이 여러 개일 수 있으므로, 그중에서 등수가 높은 학생부터 읽었을 때 사전순으로 가장 큰 배열을 출력한다. 즉 11등의 점수를 될 수 있는 대로 크게, 그다음 22등의 점수를 될 수 있는 대로 크게, ... 정하는 배열이다.

입력

첫째 줄에 네 정수 nn, pp, kk, dd가 공백으로 구분되어 주어진다.

  • 1≤k≤n≤10001 \le k \le n \le 1000
  • 0≤p≤1,000,0000 \le p \le 1{,}000{,}000
  • 1≤d≤k1 \le d \le k

출력

조건을 만족하는 사전순으로 가장 큰 점수 배열을, 등수가 높은 학생부터 한 줄에 하나씩 출력한다.

주어진 값으로는 어떤 점수 배열도 만들 수 없다면 "Wrong information"을 출력한다.

예제3

  1. 예제 1

    입력
    3 4 2 2
    
    예상 출력
    4
    0
    0
    
  2. 예제 2

    입력
    3 5 2 2
    
    예상 출력
    5
    0
    0
    
  3. 예제 3

    입력
    2 5 2 1
    
    예상 출력
    Wrong information