Remover ocorrências excedentes de elementos de uma lista

Crie um método que receba dois argumentos: uma lista values e um número limit. Se um elemento aparecer em values mais de limit vezes, remova as ocorrências excedentes e retorne o resultado.

Exemplos

Program.deleteOccurrences(java.util.List.of(1, 1, 1, 1), 2) ➞ java.util.List.of(1, 1)

Program.deleteOccurrences(java.util.Arrays.asList(13, true, 13, null), 1) ➞ java.util.Arrays.asList(13, true, null)

Program.deleteOccurrences(java.util.List.of(true, true, true), 3) ➞ java.util.List.of(true, true, true)

Observações

Não altere a ordem da lista original.