#5479. 信号解压
信号解压
题目描述
小A接收到了小B从火星传来的信息,这组信息共分为w段。
他们约定每段数据的第一个数x如果是负数,则该段数据共有|x|+1个数,该段信息解压后为从第2个数开始的|x|个数(|x|表示取绝对值)。
如果这段数据的第一个数x是正数,该段信息解压后为把该段数据的第二个数重复x次。
如果这段数据的第一个数x是0,这表示这段信息没有任何含义,直接忽略。
求解压后所有数据的和。
输入格式
输入第一行一个整数w,表示有w段信息。
第二行数据包含了w段信息。
输出格式
输出信息解压后的所有数字和。
样例输入 1
2
2 3 -2 1 2
样例输出 1
9
样例输入 2
5
3 2 -5 0 1 2 3 4 5 1 5 0 -4 4 3 2 1
样例输出 2
31
说明
样例 1 解释
共两段信息,第一段2 3,表示将数字3重复2次,得到:3 3 。
第二段信息-2 1 2 ,-2表示这段信息共有|-2|+1=3个数,解压后的信息为从第2个数开始的|-2|=2个数,即后面的:1 2 。
因此解压后数据为:3 3 1 2 ,总和为9。
样例 2 解释
共5段信息,每段信息解压后内容如下:
- 第1段信息:2 2 2
- 第2段信息:0 1 2 3 4
- 第3段信息:1 1 1 1 1
- 第4段信息:0 0 0 0 0
- 第5段信息:4 3 2 1
数据范围
对于100%的数据,满足1 ≤ w ≤ 10^8。 数据保证总和小于2^63