Ctrl K

Срезать начало до уникальности

Лёгкая
Дан массив целых чисел queue. За одну операцию с начала массива удаляются три элемента, а если их осталось меньше трёх — все оставшиеся. Верните наименьшее число операций, после которого в массиве не останется повторяющихся значений. Пустой массив повторов не содержит.
Пример 1
queue=[5, 1, 5, 2, 8, 3, 2] → 2

После первой обрезки остаётся [2, 8, 3, 2] — двойка повторяется. После второй — [2], повторов нет.

Пример 2
queue=[9, 9] → 1

Одна обрезка снимает обе карточки; пустой список повторов не содержит.

Пример 3
queue=[4, 7, 1] → 0

Повторов нет сразу.

Ограничения
  • 1 ≤ len(queue) ≤ 100
  • 1 ≤ queue[i] ≤ 100
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиПара с заданной суммой ЛёгкаяПобедитель с большинством голосов ЛёгкаяЕсть ли повтор ЛёгкаяПовтор в пределах окна ЛёгкаяПотерянный билет Лёгкая
загружаем Python…
Вход
queue=[5, 1, 5, 2, 8, 3, 2]
Ожидается
2

«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 118 тестов на сервере, включая скрытые.