eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Флюорографія

Флюорографія

На флюорографічне обстеження зібралися \textbf{n} марсіан \textbf{k} різних статей. Усі обсте­жу­вані певним чином вишикувалися в чергу. У кабінет флюорографії запускають по \textbf{m} осіб одразу, але лише якщо вони однієї статі. Якщо перша на даний момент особа в черзі має стать \textbf{s}, запускають цю особу, а також наступних \textbf{m-1} представника статі \textbf{s} із черги, навіть якщо перед кимось із них стояли представники інших статей. Якщо в черзі лишилося менше ніж \textbf{m} представників даної статі, в кабінет запускають їх усіх, а представники інших статей мають чекати. Кожна група марсіан, починаючи з другої, заходить через годину після попередньої (навіть якщо попередня група склада­лася менше ніж із \textbf{m} обстежуваних). Знаючи, в якому порядку представники всіх статей вишикувалися в чергу, визначте для кожної особи, через скільки годин після початку обстеження вона зайде в кабінет флюорографії. \InputFile У першому рядку вхідного файлу вказано кількість марсіан у черзі \textbf{n}, кількість статей \textbf{k} і максимальний розмір групи \textbf{m}. Усі три числа натуральні та не перевищують \textbf{100000}. У другому рядку задано \textbf{n} чисел, розділених символами пропуску. Число на \textbf{i}-му місці --- стать особи, що стоїть \textbf{i}-ю в черзі. Стать задано натуральним числом від \textbf{1} до \textbf{k }включно. У \textbf{40}\% тестів до цієї задачі \textbf{n}, \textbf{k} та \textbf{m} не перевищують \textbf{1000}, а ще в \textbf{20}\% тестів \textbf{k} не більше за \textbf{10}. \OutputFile Вихідний файл повинен містити \textbf{n} чисел, розділених символами пропуску. Число на \textbf{i}-му місці --- кількість годин після початку обстеження, коли \textbf{i}-та особа з черги потрапить у кабінет флюорографії.
Лимит времени 1 секунда
Лимит использования памяти 32 MiB
Входные данные #1
3 2 2
1 2 1
Выходные данные #1
0 1 0