#1429. [L1-6] 序列变换

内存限制:512 MiB 时间限制:2000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Yeyin_0

题目描述

你有一条长度为 nn 的数组,其中第 ii 项为 aia_i

你打算对其进行一个变换,即对每个 aia_i,将其值更改为其左右两边的元素之和;特殊的,a1a_1 改为 a2a_2ana_n 改为 an1a_{n-1}

你管变换后的数组叫 bbbb 显然满足 b1=a2,bn=an1,bi=ai1+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)

你看着变换后的数组觉得很满意,于是去上线性代数课了,回来之后才发现草稿纸上的原数组 aa 已消失不见,只剩下变换后的数组 bb

你很疑惑,想搞清楚原数组是什么样。

输入格式

第一行一个正整数 nn,表示数列 bb 的长度

第二行有 nn 个整数,其中第 ii 个表示 bib_i

输出格式

若原数组唯一

第一行输出 nn,即原数组大小

第二行输出 nn 个整数,第 ii 个代表原数组元素 aia_i

若原数组不唯一

第一行输出 Inf

数据保证存在原数组,即不会出现没有符合条件的原数组的情况

样例

样例输入1:

4
4 16 18 5

样例输出1:

4
11 4 5 14

样例输入2:

3
114 514 114

样例输出2:

Inf

数据范围与提示

数据范围

对于 20%20\% 的测试点,有 n=2n=2

另外,对于 20%20\% 的测试点,有 n10n \leq 10 且原数组 aa 满足 ai1|a_i|\leq 1

对于全部测试点有

2n1052 \leq n \leq 10^5

0bi109(1in)0 \leq |b_i| \leq 10^9 (1 \leq i \leq n)

样例解释

样例一:

16=11+518=4+1416=11+5,18=4+14

样例二:

显然原数组只需满足 a2=114,a1+a3=514a_2=114, a_1+a_3=514 即可,不唯一