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

Считалочка

Считалочка

Лимит времени 3 секунды
Лимит использования памяти 64 MiB

n детей, стоя по кругу, используют считалочку для определения кто покинет круг. Это означает, что они будут повторять считалочку, с каждым словом показывая на следующего (по кругу) ребенка. Ребенок, на которого в считалочке укажут последним словом, покидает круг.

Процесс повторяется k (1kn) раз, каждый раз начиная с ребенка, стоящего сразу за тем кто покинул круг. Счет идет от меньшего номера до большего, однако считалочки каждый раз разные.

Напишите программу, которая по количеству детей, количеству считалочек, а также количеству слов в считалочках вычислит порядок выбывания детей из круга.

Входные данные

Первая строка содержит количество детей n (1n10^18) и количество использованных считалочек k (1k ≤ min(n, 10^5)). Вторая строка содержит k целых чисел (каждое в промежутке 1a_i10^18) - количество слов в считалочках, использованных первый, второй, …, k-ый раз.

Выходные данные

В одной строке вывести k чисел - номера детей, покидающих круг после соответствующей считалочки. Сначала дети пронумерованы от 1 до k, на первого ребенку указывают когда читают первое слово первой считалочки. Далее дети сохраняют свой номер несмотря на номера тех, кто покидает круг.

Пример

Входные данные #1
10 5
2 7 1 8 2
Выходные данные #1
2 9 10 1 4
Входные данные #4
8 3
10 1 2
Выходные данные #4
2 3 5
Источник 2014 ACM-ICPC Украина, 2ой Раунд Украина, Сентябрь 13, Задача I