Считалочка
n детей, стоя по кругу, используют считалочку для определения кто покинет круг. Это означает, что они будут повторять считалочку, с каждым словом показывая на следующего (по кругу) ребенка. Ребенок, на которого в считалочке укажут последним словом, покидает круг.
Процесс повторяется k (1 ≤ k ≤ n) раз, каждый раз начиная с ребенка, стоящего сразу за тем кто покинул круг. Счет идет от меньшего номера до большего, однако считалочки каждый раз разные.
Напишите программу, которая по количеству детей, количеству считалочек, а также количеству слов в считалочках вычислит порядок выбывания детей из круга.
Входные данные
Первая строка содержит количество детей n (1 ≤ n ≤ 10^18) и количество использованных считалочек k (1 ≤ k ≤ min(n, 10^5)). Вторая строка содержит k целых чисел (каждое в промежутке 1 ≤ a_i ≤ 10^18) - количество слов в считалочках, использованных первый, второй, …, k-ый раз.
Выходные данные
В одной строке вывести k чисел - номера детей, покидающих круг после соответствующей считалочки. Сначала дети пронумерованы от 1 до k, на первого ребенку указывают когда читают первое слово первой считалочки. Далее дети сохраняют свой номер несмотря на номера тех, кто покидает круг.