[BOJ 15648] 추출하는 폴도 바리스타입니다
View as PDF
Submit solution
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
Points:
4
Time limit:
1.5s
Memory limit:
64M
Problem types
Allowed languages
추출하는 폴은 바리스타입니다. 폴에게는 커피콩 N개가 순서대로 주어집니다. 폴은 이 중 몇 개를 골라서 추출할 예정입니다. 이때, 최종 결과물의 질이 좋아야 할 것입니다. 결과물의 질이 좋기 위해서는, 커피콩들의 종류(정수로 표현됩니다.)로 이루어진 수열의 부분수열을 A라고 하면, 2 이상의 모든 i 에 대해 Ai - 1 ≡ Ai (mod k) 나 Ai - 1 - d ≤ Ai ≤ Ai - 1 + d를 만족함을 뜻합니다.
폴을 위해서 질이 좋은 커피 추출물 중 가장 많은 커피콩을 고를 때 그 개수를 구해주세요.
입력 형식
첫째 줄에 N, k 와 d가 주어집니다. (1 ≤ N ≤ 5 × 105, 1 ≤ k, d ≤ 5 × 105)
N개의 커피콩의 순서와 각각의 번호를 나타내는 길이 N의 배열 S가 다음 줄에 주어집니다. (1 ≤ Si ≤ 5 × 105)
출력 형식
질이 좋은 커피 추출물 중 가장 많은 커피콩을 고를 때 그 개수를 출력합니다.
예제 입력
9 7 2
1 5 12 10 8 6 4 4 3
예제 출력
8
Comments