C. Коробки и шарики
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

У маленького мальчика Васи в комнате стояло n коробок с шариками. Коробки стояли в ряд и были пронумерованы числами от 1 до n слева направо.

Однажды Вася выбрал одну из коробок, пусть она имеет номер i, вынул из нее все шарики (гарантируется, что в этой коробке изначально был хотя бы один шарик) и начал класть по одному шарику в коробки с номерами i + 1, i + 2, i + 3 и так далее. Если Вася кладет шарик в коробку номер n, то следующий шарик он положит в коробку 1, затем в коробку 2 и так далее. Так он действовал пока в его руках не осталось ни одного шарика. Возможно, что Вася положит несколько шариков в одну и ту же коробку, а также возможно, что один или несколько шариков попадут в коробку номер i. В случае i = n первый шарик Вася положит в коробку 1, затем в коробку 2 и так далее.

Например, пусть изначально у Васи было четыре коробки, и в первой коробке лежало 3 шарика, во второй — 2, в третьей — 5, в четвертой — 4 шарика. Тогда если i = 3, то Вася вынет все пять шариков из третьей коробки и разложит их в коробки с номерами: 4, 1, 2, 3, 4. После всех действий Васи шарики будут лежать в коробках таким образом: в первой коробке — 4, во второй — 3, в третьей — 1, в четвертой — 6.

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

Он просит Вас помочь найти начальное расположение шариков в коробках.

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

В первой строке входных данных находятся два целых числа — n и x (2 ≤ n ≤ 105, 1 ≤ x ≤ n), означающие количество коробок и номер коробки, куда Вася положил последний шарик, соответственно. Во второй строке через пробел записаны n целых чисел a1, a2, ..., an, где число ai (0 ≤ ai ≤ 109, ax ≠ 0) означает количество шариков в коробке номер i после того, как Вася выполнил все действия.

Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-битных чисел на С++. Рекомендуется использовать потоки cin, cout или спецификатор %I64d.

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

Выведите n целых чисел, где i-ое означает количество шариков в коробке номер i до начала действий Васи. Числа при выводе разделяйте пробелами. Если существует несколько правильных решений, то разрешается вывести любое.

Примеры
Входные данные
4 4
4 3 1 6
Выходные данные
3 2 5 4 
Входные данные
5 2
3 2 0 2 7
Выходные данные
2 1 4 1 6 
Входные данные
3 3
2 3 1
Выходные данные
1 2 3