#2721. 生物塔防御战
生物塔防御战
题目描述
小华在探索神秘洞穴时遭遇了一个奇特的防御系统: 个生物紧密堆叠形成了一座生物塔!塔的结构从下到上编号为 到 ,第 个生物位于第 层,初始拥有 点生命值。
小华每次可以选择塔中任意一个生物进行攻击,造成 点伤害。当某个生物的生命值降至零或以下时,该生物会被消灭,其上方的所有生物会向下坠落并重新堆叠成一座新的塔。
坠落过程中,新堆叠最底层的生物会受到坠落冲击,伤害值等于坠落前它下方生物的数量(包括刚被消灭的那个生物)。如果这次冲击导致该生物死亡,坠落过程会继续向上传导,形成连锁反应。
例如,考虑一个生命值为 的生物塔。如果小华攻击第四层的生物(生命值 ),该生物死亡后:
- 上方的 会坠落形成新塔
- 新塔最底层的生物受到 点坠落伤害而死亡,伤害从新塔向上传导
- 上方的 继续坠落,最底层生物受到 点坠落伤害
最终形成两座塔: 和 。
小华的武器耐久有限,他需要找出摧毁整座生物塔所需的最少攻击次数。
输入格式
第一行包含一个整数 (),表示生物数量。
第二行包含 个整数 (),表示从底层到顶层的生物初始生命值。
输出格式
输出一个整数,表示消灭所有生物所需的最少攻击次数。
输入输出样例
输入样例 1
5
3 1 4 1 2
输出样例 1
7
输入样例 2
4
1 1 1 1
输出样例 2
1
输入样例 3
6
1 2 1 3 5 2
输出样例 3
7
输入样例 4
6
3 1 1 3 2 1
输出样例 4
5
输入样例 5
3
1000000000 1000000000 1000000000
输出样例 5
2999999998
样例解释
样例 1说明:
初始塔:
最优攻击策略:
- 攻击第 层(生命值 ) 塔分裂为 和
- 攻击第二座塔第 层(生命值 ) 塔变为 和
- 攻击第一座塔剩余的一只生物( 次)+攻击第二座塔剩余的一只生物( 次)
总计: 次攻击
样例 2说明:只需攻击最底层的生物一次,引发的连锁反应就会让整个塔瞬间崩塌。
数据范围
- 对于 的数据,满足:,
- 对于 的数据,满足:,
相关
在以下作业中:
