你有一条长度为 nnn 的数组,其中第 iii 项为 aia_iai。
你打算对其进行一个变换,即对每个 aia_iai,将其值更改为其左右两边的元素之和;特殊的,a1a_1a1 改为 a2a_2a2,ana_nan 改为 an−1a_{n-1}an−1。
你管变换后的数组叫 bbb,bbb 显然满足 b1=a2,bn=an−1,bi=ai−1+ai+1(1<i<n)b_1=a_2,b_n=a_{n-1},b_i=a_{i-1}+a_{i+1}(1<i<n)b1=a2,bn=an−1,bi=ai−1+ai+1(1<i<n)
你看着变换后的数组觉得很满意,于是去上线性代数课了,回来之后才发现草稿纸上的原数组 aaa 已消失不见,只剩下变换后的数组 bbb。
你很疑惑,想搞清楚原数组是什么样。
第一行一个正整数 nnn,表示数列 bbb 的长度
第二行有 nnn 个整数,其中第 iii 个表示 bib_ibi
若原数组唯一
第一行输出 nnn,即原数组大小
第二行输出 nnn 个整数,第 iii 个代表原数组元素 aia_iai
若原数组不唯一
第一行输出 Inf
Inf
数据保证存在原数组,即不会出现没有符合条件的原数组的情况
样例输入1:
4 4 16 18 5
样例输出1:
4 11 4 5 14
样例输入2:
3 114 514 114
样例输出2:
数据范围
对于 20%20\%20% 的测试点,有 n=2n=2n=2
另外,对于 20%20\%20% 的测试点,有 n≤10n \leq 10n≤10 且原数组 aaa 满足 ∣ai∣≤1|a_i|\leq 1∣ai∣≤1
对于全部测试点有
2≤n≤1052 \leq n \leq 10^52≤n≤105
0≤∣bi∣≤109(1≤i≤n)0 \leq |b_i| \leq 10^9 (1 \leq i \leq n)0≤∣bi∣≤109(1≤i≤n)
样例解释
样例一:
16=11+5,18=4+1416=11+5,18=4+1416=11+5,18=4+14
样例二:
显然原数组只需满足 a2=114,a1+a3=514a_2=114, a_1+a_3=514a2=114,a1+a3=514 即可,不唯一