atcoder#ABC256B. [ABC256B] Batters

[ABC256B] Batters

题目描述

44 个方格,分别是方格 00、方格 11、方格 22 和方格 33。初始时,所有方格都是空的。

还有一个整数 PP,初始时 P=0P = 0

给定一个正整数序列 A=(A1,A2,,AN)A = (A_1, A_2, \dots, A_N),对于每个 i=1,2,,Ni = 1, 2, \dots, N,按以下顺序执行操作:

  1. 将一个棋子放在方格 00 上。
  2. 将每个方格 AiA_i 个方格远的棋子向前移动。换句话说,如果方格 xx 上有棋子,则将棋子移动到方格 (x+Ai)(x + A_i)

然而,如果目标方格不存在(即 x+Ai4x + A_i \geq 4),则移除棋子。并将移除的棋子的数量加到 PP 上。

在执行完所有操作后,输出 PP 的值。

输入格式

第一行输入 N N

第二行输入 A1 A_1 A2 A_2 \dots AN A_N

输出格式

根据题目输出答案

4
1 1 3 2
3
3
1 1 1
0
10
2 2 4 1 1 1 4 2 2 1
8

提示

  • 1  N  100 1\ \leq\ N\ \leq\ 100
  • 1  Ai  4 1\ \leq\ A_i\ \leq\ 4
  • 输入数据均为整数

样例 1 解释

操作过程如下所示。在执行完所有操作后,PP 的值为 33

  • i=1i=1 时的操作:

    1. 将一个棋子放在方格 00 上。现在,方格 00 上有一个棋子。
    2. 将每个棋子向前移动 11 个方格。经过这一步后,方格 11 上有一个棋子。
  • i=2i=2 时的操作:

    1. 将一个棋子放在方格 00 上。现在,方格 00 和方格 11 上都有棋子。
    2. 将每个棋子向前移动 11 个方格。经过这一步后,方格 11 和方格 22 上都有棋子。
  • i=3i=3 时的操作:

    1. 将一个棋子放在方格 00 上。现在,方格 00、方格 11 和方格 22 上都有棋子。
    2. 将每个棋子向前移动 33 个方格。 在这里,方格 11 和方格 22 上的棋子目标方格不存在(因为 1+3=41 + 3 = 42+3=52 + 3 = 5),因此这些棋子被移除,并将 22 加到 PP 上。此时,PP 变为 22。经过这一步后,方格 33 上有一个棋子。
  • i=4i=4 时的操作:

    1. 将一个棋子放在方格 00 上。现在,方格 00 和方格 33 上都有棋子。
    2. 将每个棋子向前移动 22 个方格。 在这里,方格 33 上的棋子目标方格不存在(因为 3+2=53 + 2 = 5),因此这个棋子被移除,并将 11 加到 PP 上。此时,PP 变为 33。经过这一步后,方格 22 上有一个棋子。