AT_tenka1_2012_final_c Code Art Online

题目描述

Code Art Online是一款文字冒险RPG。玩家使用“符号”进行战斗 游戏中,有你与敌人。 游戏中你可以有以下 $3$ 种操作 A.给予敌人 $5$ 点伤害 B连续给予敌人伤害 C.恢复玩家生命值 $50$ 关于操作B,例子,回合1时伤害为 $1$,回合2时伤害为 $2$,回合 $3$时伤害为 $3$ 玩家的生命值最高为 $100$,恢复时超过 $100$,则视做 $100$,敌人也一样。回合按照敌的攻击→玩家的攻击→敌的恢复→玩家的恢复的顺序进行。 所以同一回合内的伤害处理和恢复处理,是伤害处理先进行的,所以在被伤害处理结束的阶段HP变为 $0$ 以下的情况下,此时游戏结束。敌人有最大HP和攻击力和回复力的参数。 ``` 回合 出招 你的血量 敌人的血量 1 A 85 6 2 A 70 2 3 A 55 0 # 第一个敌人被击败了! 4 C 95 20 # 你受到10点伤害后回复50血 5 B 85 20 # 敌人受到1点伤害后回复1血 6 B 75 20 # 敌人受到2点伤害后回复2血 7 B 65 19 8 B 55 17 9 B 45 14 10 B 35 10 11 B 25 5 12 B 15 0 ``` ------------ 有多个敌人存在的情况下,打倒战斗的敌人就会自动出现下一个敌人,下一个回合就会和那个敌人战斗。 举个栗子: 假设有 $2$个敌人,第 $1$个敌人的HP为 $10$,攻击力为 $15$,恢复力为 $11$,第2个敌人的HP为 $20$,攻击力为 $10$,恢复力为 $2$。 此时,如果用AAACBBBBBB这个符号战斗的话,可以打倒 $2$个敌人。

输入格式

- 第一行N($1 \le n \le 30$)敌人的数量 - 第二行到第N+1行,敌的血量 $ai$($1 \le ai \le 100$) ,敌的攻击力 $bi$($1 \le bi \le 100$),$ci$ 敌的恢复力($1 \le ci \le 100$),以空格分隔

输出格式

共一行:输出以最短回合数赢得游戏的操作长度。 (如果不能打倒敌人输出 $-1$) //请注意,答案最后需要换行。 ------------ ###### translator:[weishiqi66](https://www.luogu.com.cn/user/590571)