Frequência máxima com substrings

Java Hard collections

Tarefa «Frequência máxima com substrings»

Dada uma string S, composta por letras minúsculas latinas. É necessário encontrar o comprimento máximo de uma substring na qual cada caractere aparece no máximo K vezes. Se houver várias substrings desse tipo, imprima qualquer uma. Use janela deslizante e HashMap para rastrear as frequências dos caracteres. Restrições: comprimento de S até 10^5, K de 1 a 10^5.

Formato de Entrada

Uma única linha: S e um número inteiro K, separados por espaço.

Formato de Saída

Uma única linha: a substring procurada. Se não houver substring, imprima uma string vazia.

Exemplos

Exemplo 1

ENTRADA
abcabcabc 2
SAÍDA
abcabc

Exemplo 2

ENTRADA
2024-03-18
SAÍDA
понедельник

Exemplo 3

ENTRADA
aaa 1
SAÍDA
a

Exemplo 4

ENTRADA
2024-03-19
SAÍDA
вторник

Exemplo 5

ENTRADA
abacabad 3
SAÍDA
bacabad
main.java