Logo
(追記) (追記ここまで)

33940번 - 부분 수열 고르기 스페셜 저지

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB210776139.103%

문제

길이가 $N$인 수열 $A = \{a_1, a_2, a_3, \cdots, a_N\}$는 초항이 $a$이고 공차가 $d$인 유한 등차수열이다.

양의 정수 $M$에 대하여 합이 $M$인 $A$의 부분 수열 중 가장 긴 것을 구하시오.

부분 수열이란 주어진 수열에서 원래 순서를 유지하며 0ドル$개 이상의 원소를 제거하여 얻은 수열이다.

입력

첫째 줄에 네 정수 $N,ドル $a,ドル $d,ドル $M$이 공백으로 구분되어 주어진다. $(1 \leq N, a, d \leq 10^6;$ 1ドル \leq M \leq 10^{18})$

출력

첫째 줄에 합이 $M$인 $A$의 부분 수열 중 가장 긴 것의 길이 $L$을 출력한다.

둘째 줄에 그러한 부분 수열의 원소 $L$개를 공백으로 구분하여 출력한다. 가능한 답이 여러 가지라면 그중 아무거나 출력한다.

만약 그런 부분 수열이 존재하지 않는다면 첫째 줄에 $−1$을 대신 출력한다.

제한

예제 입력 1

5 2 2 10

예제 출력 1

2
4 6

예제 입력 1에서 주어진 수열은 $A = \{2, 4, 6, 8, 10\}$이다. 길이 조건을 제외하면 가능한 $B$의 후보는 $\{10\},ドル $\{2, 8\},ドル $\{4, 6\}$이다. 이 중 길이가 가장 긴 수열은 $\{2, 8\}$과 $\{4, 6\}$이므로 둘 중 아무거나 출력하면 된다.

예제 입력 2

3 1 2 7

예제 출력 2

-1

노트

출처

University > 경희대학교 > 경희대학교 2025 봄 프로그래밍 경시대회 (KHSPC 2025) D번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /