#P9001. 魔法师的回合战斗
魔法师的回合战斗
魔法师的回合战斗

题目描述
木桩的初始生命值为 H,战斗共 N 个回合。每回合先结算冷却时间:若冷却时间大于 0,则减 1。然后按本回合的指令行动:
- 指令
0:普通攻击,造成2点伤害,能量加1(能量上限为5)。 - 指令
1:尝试释放火球术,造成7点伤害,消耗3点能量,冷却时间变为3。
火球术需要能量不少于 3 且冷却时间为 0 才能释放,条件不满足时本回合改为普通攻击(造成 2 点伤害并获得 1 点能量,受能量上限约束)。初始能量和冷却时间均为 0。
木桩生命值最低为 0,归零后仍需继续模拟剩余回合。
输入格式
第一行两个整数 H 和 N,分别表示木桩初始生命值和回合数。
第二行一个长度为 N 的字符串 S,S 的第 i 个字符是第 i 回合的指令。
输出格式
输出 N 行,第 i 行表示第 i 回合结束时的状态,包含 6 个整数:
回合编号 实际攻击类型 造成伤害 木桩生命值 能量 冷却时间
其中实际攻击类型 0 表示本回合实际进行了普通攻击,1 表示成功释放了火球术;能量和冷却时间都是该回合结算后的数值。
样例
输入
100 9
000001011
输出
1 0 2 98 1 0
2 0 2 96 2 0
3 0 2 94 3 0
4 0 2 92 4 0
5 0 2 90 5 0
6 1 7 83 2 3
7 0 2 81 3 2
8 0 2 79 4 1
9 1 7 72 1 3
样例解释
第 6 回合能量为 5 且冷却时间为 0,成功释放火球术。第 8 回合开始时冷却时间由 2 减为 1,此时能量虽然已经回到 3,但冷却时间不为 0,所以仍然改为普通攻击。第 9 回合开始时冷却时间由 1 减为 0,冷却结束的当回合即可再次释放火球术。
数据范围
1 <= H <= 100000,1 <= N <= 1000,S 只包含字符 0 和 1。