#5190. Triple Attack

0
    ID: 5190 传统题 2000ms 1024MiB 尝试: 0 已通过: 0 难度: 2 上传者: 标签>AtCoderabc368CGESP 2级枚举(单层循环)模拟

Triple Attack

Triple Attack

题目描述

你在玩一个游戏。 有 NN 个敌人排成一行,第 ii 个(从前面开始数)的生命值是 HiH_i。 你将重复以下操作直到所有敌人的生命值变为 00 或更少,使用一个初始为 00 的变量 TT。

将 TT 增加 11。然后,攻击前面第一个生命值为 11 或更高的敌人。如果 TT 是 33 的倍数,该敌人的生命值减少 33;否则,减少 11。

求当所有敌人的生命值变为 00 或更少时的 TT 值。

输入格式

输入按下述格式从标准输入给出: NN H1H_1 H2H_2 …\ldots HNH_N

输出格式

输出答案。

3
6 2 2
8
9
1 12 123 1234 12345 123456 1234567 12345678 123456789
82304529
5
1000000000 1000000000 1000000000 1000000000 1000000000
3000000000

提示

1≤N≤2×1051 \leq N \leq 2\times 10^5 1≤Hi≤1091 \leq H_i \leq 10^9 所有输入值都是整数。操作按如下方式进行:

TT 变为 11。攻击第 1 个敌人,其生命值变为 6−1=56-1=5。 TT 变为 22。攻击第 1 个敌人,其生命值变为 5−1=45-1=4。 TT 变为 33。攻击第 1 个敌人,其生命值变为 4−3=14-3=1。 TT 变为 44。攻击第 1 个敌人,其生命值变为 1−1=01-1=0。 TT 变为 55。攻击第 2 个敌人,其生命值变为 2−1=12-1=1。 TT 变为 66。攻击第 2 个敌人,其生命值变为 1−3=−21-3=-2。 TT 变为 77。攻击第 3 个敌人,其生命值变为 2−1=12-1=1。 TT 变为 88。攻击第 3 个敌人,其生命值变为 1−1=01-1=0。
注意整数溢出。

标签: AtCoder|abc368C

来源

AtCoder|abc368C