Ctrl K

Сколько цветов сейчас

Средняя
Есть шарики с номерами от 0 до last_label, изначально все неокрашенные. Покраски идут по очереди: paints[i] = [ball, color] означает, что шарик ball перекрашивается в цвет color (прежний цвет шарика, если был, пропадает). После каждой покраски посчитайте, сколько различных цветов сейчас есть среди шариков; неокрашенный шарик цвета не добавляет. Верните список этих чисел по порядку покрасок.
Пример 1
last_label=3, paints=[[0, 7], [1, 7], [0, 2], [1, 2]] → [1, 1, 2, 1]

После каждой покраски цвета такие: {7}, {7}, {7, 2}, {2} — ответ [1, 1, 2, 1].

Пример 2
last_label=5, paints=[[4, 1], [4, 1], [2, 3]] → [1, 1, 2]

Повторная покраска шарика 4 тем же цветом ничего не меняет.

Ограничения
  • 1 ≤ last_label ≤ 10⁹
  • 1 ≤ len(paints) ≤ 10⁵
  • 0 ≤ paints[i][0] ≤ last_label
  • 1 ≤ paints[i][1] ≤ 10⁹
Встречал эту задачу на настоящем собесе?
Решили0
Пробовали0
Отправок0
Принято—
Темы
Похожие задачиКак далеко уехал ровер СредняяПоследний шаг с серией нужной длины СредняяРаскопанные находки СредняяЦепочка замен СредняяСтрока равна столбцу Средняя
загружаем Python…
Вход
last_label=3, paints=[[0, 7], [1, 7], [0, 2], [1, 2]]
Ожидается
[1, 1, 2, 1]

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