[CCC 2015 S1] Zero That Out
题目描述
给定 k k k 个整数 a 1 … k a_{1 \dots k} a1…k,维护一个序列,按顺序进行以下操作:
- 当 a i = 0 a_{i} = 0 ai=0 时,将序列中最后加入的数删除。
- 否则,将 a i a_{i} ai 加入序列。
例如:当 a = { 1 , 3 , 5 , 4 , 0 , 0 , 7 , 0 , 0 , 6 } a = \{1,3,5,4,0,0,7,0,0,6\} a={1,3,5,4,0,0,7,0,0,6} 时,操作如下。
a i a_{i} ai | 序列 |
---|---|
1 1 1 | { 1 } \{1\} {1} |
3 3 3 | { 1 , 3 } \{1,3\} {1,3} |
5 5 5 | { 1 , 3 , 5 } \{1,3,5\} {1,3,5} |
4 4 4 | { 1 , 3 , 5 , 4 } \{1,3,5,4\} {1,3,5,4} |
0 0 0 | { 1 , 3 , 5 } \{1,3,5\} {1,3,5} |
0 0 0 | { 1 , 3 } \{1,3\} {1,3} |
7 7 7 | { 1 , 3 , 7 } \{1,3,7\} {1,3,7} |
0 0 0 | { 1 , 3 } \{1,3\} {1,3} |
0 0 0 | { 1 } \{1\} {1} |
6 6 6 | { 1 , 6 } \{1,6\} {1,6} |
你需要计算最终序列中所有数的和。
输入格式
第一行一个整数 k k k。
接下来 k k k 行,每行一个整数 a i a_{i} ai。
输出格式
输出一行一个整数,表示最终序列中所有数的和。
样例 #1
样例输入 #1
4
3
0
4
0
样例输出 #1
0
样例 #2
样例输入 #2
10
1
3
5
4
0
0
7
0
0
6
样例输出 #2
7
提示
【数据范围】:
1 ≤ k ≤ 1 0 5 1 \leq k \leq 10^{5} 1≤k≤105, 0 ≤ a i ≤ 100 0 \leq a_{i} \leq 100 0≤ai≤100。
保证在 a i = 0 a_{i} = 0 ai=0 时序列不为空。
Scratch实现
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MoHkKuWi-1720247539502)(https://i-blog.csdnimg.cn/direct/ad964aff16e141469612cf839756993c.png)]
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容