Longueur maximale d’un sous-tableau avec des éléments uniques après K remplacements

C++ Hard arrays

Tâche «Longueur maximale d’un sous-tableau avec des éléments uniques après K remplacements»

Étant donné un tableau d’entiers. Il est permis de remplacer au plus K éléments du tableau par n’importe quels autres entiers (éventuellement non uniques). Il faut trouver la longueur maximale possible d’un sous-tableau continu dont tous les éléments sont distincts (uniques) après avoir effectué au plus K remplacements. S’il est impossible d’obtenir un sous-tableau avec des éléments uniques, afficher 0. Contraintes : longueur du tableau N jusqu’à 10^5, K jusqu’à N, valeurs des éléments en valeur absolue jusqu’à 10^9.

Format d\ entrée

Sur la première ligne, deux entiers N et K (1 ≤ N ≤ 100000, 0 ≤ K ≤ N). Sur la deuxième ligne, N entiers — les éléments du tableau.

Format de sortie

Un entier — la longueur maximale d’un sous-tableau avec des éléments uniques après au plus K remplacements.

Exemples

Exemple 1

ENTRÉE
4 1 2 3 4
SORTIE
3
main.cpp