Metro | 프로그래밍의 벗 PivotOJ
PivotOJ

Metro

시간 제한: 1000ms메모리 제한: 1024MB출처: LMIO 2017-2018BOJ 7277

문제

Metro linijoje važiuoja T traukinių. Idealiu atveju, visi traukiniai būna išsidėstę vienodais atstumais – tokiu atveju sakome, kad eismas yra reguliarus. Tačiau dažnai, dėl įvairių priežasčių, traukiniai priartėja arba nutolsta vieni nuo kitų. Todėl karts nuo karto visų traukinių paprašoma sustoti ir palaukti kažkiek minučių. Šis procesas yra vadinamas reguliarizacija.

Jums žinomi atstumai tarp visų traukinių, matuojami minutėmis. Raskite, kiek minučių turi palaukti kiekvienas traukinys, kad eismas taptų reguliarus ir atstumas tarp visų gretimų traukinių būtų lygus lygiai M minučių.

Laikyti traukinius sustabdytus yra brangu, tad jei yra keli galimi atsakymai, išveskite tą, kuriame bendra laukiamo laiko suma yra mažiausia.

입력

Pirmoje eilutėje pateikti du sveikieji skaičiai: T – traukinių skaičius, ir M – pageidaujamas atstumas tarp visų gretimų traukinių.

Antroje eilutėje yra įrašyti T − 1 skaičių m1, m2, . . . mT-1 – tai atstumai tarp visų gretimų traukinių metro linijoje.

출력

Išveskite T skaičių vienoje eilutėje – kiek minučių turi palaukti kiekvienas traukinys, kad eismas taptų reguliarus (visi atstumai būtų lygūs M).

예제

예제 1

입력
3 5
4 3
출력
0 1 3

예제 2

입력
4 3
1 6 4
출력
2 4 1 0

예제 3

입력
4 7
8 4 8
출력
1 0 3 2
코드를 제출하려면 로그인하세요.