4095: Batters

文件提交:无需freopen 内存限制:128 MB 时间限制:1.000 S
评测方式:普通裁判
金币值:
命题人:
提交:1 解决:0

题目描述

# Batters ### 内存 1024MB ### 时间 2S ## 题目描述 小高正在尝试创建一个受棒球启发的游戏,但他在编写代码时遇到了困难。请为小高编写一个程序来解决以下问题。 有$4$个称为方格$0$、方格$1$、方格$2$和方格$3$的方格。最初,所有方格都是空的。还有一个整数$P$;最初,$P = 0$。 给定一个正整数序列$A = (A_1, A_2, ..., A_N)$,按顺序执行以下操作,$i = 1, 2, ..., N$: 1. 在方格$0$上放置一个棋子。 2. 将每个方格上的棋子向前移动$A_i$个方格。换句话说,如果方格$x$有一个棋子,将该棋子移动到方格$(x + A_i)$。 但是,如果目标方格不存在(即$x + A_i$大于或等于4)对于一个棋子,则移除它。将$P$增加移除的棋子数量。 执行完所有操作后,输出$P$的值。 ## 输入格式 输入从标准输入中以下列格式给出: $N$ $A_1$ $A_2$ $\cdots$ $A_N$ ## 输出格式 输出执行完所有操作后$P$的值。 ## 输入输出样例 ### 输入样例1 ``` 4 1 1 3 2 ``` ### 输出样例1 ``` 3 ``` ### 输入样例2 ``` 3 1 1 1 ``` ### 输出样例2 ``` 0 ``` ### 输入样例3 ``` 10 2 2 4 1 1 1 4 2 2 1 ``` ### 输出样例3 ``` 8 ``` ## 数据范围与提示 【样例1说明】 操作描述如下。执行完所有操作后,P等于3。 - $i$=1的操作: 1. 在方格0上放置一个棋子。现在,方格0有一个棋子。 2. 将每个方格上的棋子向前移动1个方格。这些移动后,方格1有一个棋子。 - $i$=2的操作: 1. 在方格0上放置一个棋子。现在,方格0和1各有一个棋子。 2. 将每个方格上的棋子向前移动1个方格。这些移动后,方格1和2各有一个棋子。 - $i$=3的操作: 1. 在方格0上放置一个棋子。现在,方格0、1和2各有一个棋子。 2. 将每个方格上的棋子向前移动3个方格。 这里,对于方格1和2上的棋子,目标方格不存在(因为1+3=4和2+3=5),所以移除这些棋子并将2加到P。P现在等于2。这些移动后,方格3有一个棋子。 - $i$=4的操作: 1. 在方格0上放置一个棋子。现在,方格0和3各有一个棋子。 2. 将每个方格上的棋子向前移动2个方格。 这里,对于方格3上的棋子,目标方格不存在(因为3+2=5),所以移除这个棋子并将1加到P。P现在等于3。 这些移动后,方格2有一个棋子。 【样例2说明】 P的值可能不会被操作更新。 【数据范围】 $1 ≤ N ≤ 100$ $1 ≤ A_i ≤ 4$ 所有输入值都是整数 ## 题目来源 ABC256B