11568. Цукерки


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

\(N\) цукерок розташовані в ряд зліва направо. Кожна з цих цукерок має один колір, який є одним із \(10^9\) кольорів під номером 1, 2, ... \(10^9\). Для кожного \(i = 1, 2, \ldots, N\) колір \(i\)-ї цукерки – \(c_i\). З цього ряду Степан може вибрати \(K\) послідовні цукерки та отримати їх. Тобто він може вибрати ціле число \(i\) таке, що \(1 \leq i \leq N-K+1\) і отримати \(i, (i+1), (i+2), \ldots, (i+K-1)\) цукерки. Степан любить їсти різнокольорові цукерки, тому чим більше різноманітних кольорів у його цукерок, тим щасливішим він буде.

Знайдіть максимально можливу кількість різних кольорів у цукерках, які зможе вибрати Степан.

Формат вхідних даних

Перший рядок містить цілі числа \(N, K\) (\(1 \le K \le N \le 3 \times 10^5\))

Наступний  рядок містить \(N\) цілих чисел \(c_i\) (\(1 \le c_i \le 10^9\))

Формат вихідних даних

У вихідний потік виведіть шукану кількість кольорів.

Примітка

До прикладу 1:

Якщо вибрати цукерки з 3 по 5, вони будуть мати 3 різні кольори, що є максимально можливою кількістю.

Приклад вхідних даних

7 3
1 2 1 2 3 3 1

Приклад вихідних даних

3

Приклад вхідних даних

5 5
4 4 4 4 4

Приклад вихідних даних

1

Приклад вхідних даних

10 6
304621362 506696497 304621362 506696497 834022578 304621362 414720753 304621362 304621362 414720753

Приклад вихідних даних

4

Коментарі

Ще немає коментарів.