在一场毒瘤的比赛过后, 和 开始打牌了。
下面是游戏规则:
这一款卡牌游戏叫做 英雄。现在我们给出这个游戏的简化版:
游戏在一个 列的场上进行,在一个回合中,对手先出牌,你后出牌。对手出的牌全部是随从牌,分布在场上。目前场上只有对手的随从牌(对手不会再出牌),双方英雄都有同样的足够多的血量。
现在你手上有一些牌,你需要将这些随从或法术牌出在场上。一列中的随从牌通常只会攻打对方该列的随从牌,当此行没有对方的随从牌,将直接攻击英雄(即主角)。
现在请给出一个出牌顺序的方案,使得你英雄的血量比对方英雄的血量多得尽可能多。
该游戏的攻击顺序是:先攻特效发动(你的牌必须拥有这一标签) 冰冻特效发动(你的牌必须拥有这一标签)对方的牌发动攻击 你的牌还击(即使你的牌死了) 你的牌进行双重打击(你的牌必须拥有这一标签并且还活着),每一部分叫做该列的一个回合。
注意,我们认为上面的这些操作都是在开始战斗后实现的,卡牌的放置和法术的释放必须在开始战斗前实行。
当 牌对 牌发动攻击时, 牌的生命会减去 牌的攻击力。生命小于等于 算作死亡。
我们用这样的方式描述对手的牌:
,, 分别表示这张牌的攻击力和生命值,以及它所在的列号。
数据保证对手的牌不会有两张或两张以上出现在同一列。
你也不能将两张或两张以上的牌出在同一列,除非这两张牌中有至少一张是组队牌(当然你无论如何都不能在同一列出三张牌及以上)。当一列被放置两张牌时,对方随从只会攻击后放的牌,你的这两张牌在同一个回合(定义看上面)只能攻击同一个目标。
我们用这样的方式描述你的随从牌:
分别表示这张牌的攻击力和生命值,标签的数量,每个标签的内容。
标签的意义是这张牌的能力,下面是各个标签的含义。
xxxxxxxxxx
1 组队:已经介绍
2 冰冻:使得该列对方卡牌无法攻击
3 双重打击:当还击后该卡牌还活着,再次发动一次攻击
4 先攻:回合开始先对对方英雄造成A的伤害。
5 杀手:当该列没有对方随从牌,则A翻倍(若有法术,则在A翻倍的基础上使用法术效果)。
我们用两个数 和 描述你的法术牌(法术牌对英雄无效):
xxxxxxxxxx
X=1 给一列自己的卡牌增加Y的攻击(注意一整列不是一个)
X=2 给一列自己的卡牌增加Y的生命
X=3 给一列对方的卡牌扣除Y的生命
另外有一种情况,当法术牌使用后,能够消灭该列对方卡牌,则此时杀手技能仍可释放。杀手技能不能在开始战斗后释放。
现在请给出一个出牌顺序的方案,使得你英雄的血量比对方英雄的血量多得尽可能多。你不一定要出光所有的牌。数据保证有解。
本题采用
第 行一个数 表示你对手卡牌的数量。
第 行,每行三个数 。。
第 行一个数 表示你随从牌的数量。
第 行,每行为 ,共 个数。
第 行一个数 表示你法术牌的数量。
第 行,每行两个数 。
第 行一个数 ,表示你的方案中出牌的数量。
第 行,每行两个数 :
当 ,表示你出的是随从牌,将第 张牌出在 列。
当 ,表示你出的是法术牌,将第 张牌出在 列。注意,法术 和 必须出在自己列的卡牌上,法术 必须出在对方列的卡牌上。
第 行,一个数 ,表示你的结果(即你的英雄血量最多比对方多的值)。
xxxxxxxxxx
2
1 1 1
100 100 2
2
0 6 0
2 3 1 3
0
xxxxxxxxxx
2
0 1 2
0 2 3
3
xxxxxxxxxx
2
3 1 1
100 100 2
2
0 6 0
2 4 1 3
0
xxxxxxxxxx
2
0 1 2
0 2 1
2
xxxxxxxxxx
4
0 100 1
0 100 3
0 100 4
0 100 5
2
4 8 0
2 4 1 1
1
1 5
xxxxxxxxxx
3
0 1 2
0 2 2
1 1 2
16
对于样例 :
局面:(数对 表示 攻击 生命。 表示空列)
xxxxxxxxxx
(1,1) (100,100) (0,0) (0,0) (0,0)
你有一个 的随从,一个双重打击的 随从。将 当做肉盾挡在 前(这样他就无法攻击英雄了)。 如果在 前,对英雄造成 点伤害(首次攻击消灭对方随从,双重打击造成 点伤害);如果放在任何一个 前可以对对方英雄造成 点伤害,而 对你的英雄造成 点伤害,差为 ,更优。
对于 的数据,;
对于 的数据,;
对于 的数据,;
对于 的数据,;
对于的数据, 且 在同一卡牌内不重复,,,。
时间限制:对于前 数据点,,其余数据点,。
满足题意并且最优。
满足题意,能够使自己英雄的最终血量大于对方英雄的最终血量,但不够优。
无法使自己英雄的最终血量大于对方英雄的最终血量。
法术牌用在无有效卡牌存在的列。
同行出现两张非组队随从卡牌或者两张以上任何随从卡牌。
的值不为 和 。
你的 和你的方案不符(你可以给出一个错误的 来得到一半分数,但你的方案必须可以得出这个 )。
重复出已经出过的牌或者出不存在的牌。
将牌出在不存在的列。
不符合输出格式或其他错误。