새로운 수열

원형 수열 A가 주어질 때, b_i를 a_{i+k mod N}에 (-1)^k 곱하기 (k+1)을 가중한 값의 합으로 정의하고 모든 b_i를 구한다.

보통7수학누적 합배열분할 정복아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

길이가 NN인 수열 A={a0,a1,,aN1}A = \{a_0, a_1, \dots, a_{N-1}\}이 주어진다.

이 수열로부터 길이가 같은 새로운 수열 B={b0,b1,,bN1}B = \{b_0, b_1, \dots, b_{N-1}\}을 다음과 같이 정의한다.

bi=k=0N1(1)k(k+1)a(i+k)modNb_i = \sum_{k=0}^{N-1} (-1)^k (k+1) \, a_{(i+k) \bmod N}

첨자는 NN으로 나눈 나머지를 쓰므로, aNa_{N}a0a_0과 같고 aN+1a_{N+1}a1a_1과 같다. 즉 bib_iaia_i에서 시작해 수열을 한 바퀴 돌면서 kk번째 원소에 (1)k(k+1)(-1)^k (k+1)을 곱해 모두 더한 값이다.

수열 AA가 주어지면 수열 BB를 구하라.

입력

첫째 줄에 NN이 주어진다. (1N3000001 \le N \le 300\,000)

둘째 줄에 NN개의 정수 a0,a1,,aN1a_0, a_1, \dots, a_{N-1}이 공백으로 구분되어 주어진다. (ai109|a_i| \le 10^9)

출력

첫째 줄에 수열 BB를 이루는 NN개의 정수 b0,b1,,bN1b_0, b_1, \dots, b_{N-1}을 공백으로 구분해 출력한다.

모든 ii에 대해 bi1018|b_i| \le 10^{18}이 성립하는 입력만 주어진다.