11910. Яблука в кошику
Відправити розв'язок
Бали:
100
Time limit:
1.0s
Memory limit:
500M
Author:
Problem type
Allowed languages
C++, Java, Pascal, Python
Є \(N\) кошиків пронумерованих \(1, 2, \ldots, N\), розташованих по колу. Для кожного \(1\leq i \leq N-1\) кошик \(i+1\) знаходиться безпосередньо праворуч від кошика \(i\), а кошик 1 знаходиться безпосередньо праворуч від кошика \(N\). Кошик \(i\) тепер містить \(A_i\) яблук. Степан починає перед кошиком 1 і повторює наступну дію.
- Якщо в кошику, який стоїть перед ним, є яблуко, візьміть одне і з’їжте його. Потім, незалежно від того, чи з’їв він зараз яблуко, перейдіть до наступного кошика праворуч.
Знайдіть кількість яблук, що залишилися в кожному кошику, коли Степан з’їв рівно \(K\) яблук.
Обмеження
- \(1 \leq N \leq 10^5\)
- \(0 \leq A_i \leq 10^{12}\)
- \(1 \leq K \leq 10^{12}\)
- Всього яблук не менше \(K\). Тобто \(\sum_{i=1}^{N}A_i\geq K\).
- Усі значення у вхідних даних є цілими числами.
Формат вхідних даних
Перший рядок містить цілі числа \(N,K\)
Наступний рядок містить \(N\) цілих чисел \(A_i\)
Числа у рядках розділяються пропуском.
Формат вихідних даних
У вихідний потік виведіть \(N\) цілих чисел із пробілами між ними. \(I\)-те ціле число має дорівнювати кількості яблук, що залишилися в кошику \(i\), коли Степан з’їв рівно \(K\) яблук.
Приклад вхідних даних
3 3
1 3 0
Приклад вихідних даних
0 1 0
Приклад вхідних даних
2 1000000000000
1000000000000 1000000000000
Приклад вихідних даних
500000000000 500000000000
Коментарі