#C1016. 双子之争
双子之争
双子之争(battle)
【题目描述】
在向日葵太空站里,Aries 和 Aqua 正在玩游戏。两人扮演游戏中的将军,生命值分别为 , 点。
游戏中总共有 个士兵,第 个士兵属于 。其中 为 0 则表示属于 Aries,否则 为 1 则表示属于 Aqua。
士兵将按照顺序依次行动。游戏共进行 轮。对于第 轮,如果第 个士兵仍然存活,那么他可以进行如下操作之一:
- 攻击对方的将军,对方将军生命值减 。如果对方将军生命值变为 则对方将军死亡。
- 攻击任意一个其他士兵,被攻击的士兵死亡。
如果 Aries 和 Aqua 中任意一方的将军死亡,那么另一方立刻获胜。而如果直到游戏结束都没有将军死亡则为平局。
初始给定由 01 组成的字符串 ,现在共有 次修改或查询操作:
1 p表示一次修改。如果 为0则将 修改为1,反之将 修改为0。2 l r x y表示一次查询。如果游戏局面满足 ,,,,那么游戏的结果会是什么? 如果 Aries 获胜则输出Aries,Aqua 获胜则输出Aqua,平局则输出Draw。
保证所有士兵都是绝顶聪明。且希望其所属的一方获胜,无法获胜则希望平局。
tips:请注意题目中的人名(本人写的时候因为这个东西卡了一会)
【输入格式】
第一行两个正整数 。
第二行输入一个长度为 ,仅由 01 组成的字符串 。
接下来 行,每行表示一次修改或查询操作。
【输出格式】
对于每次查询操作,输出一行一个字符串表示答案。
【样例1输入】
8 8
00111000
2 1 5 1 2
2 2 8 2 2
2 1 8 3 5
1 6
2 3 7 4 2
1 4
2 4 8 2 2
2 1 8 1 2
【样例1输出】
Aries
Aqua
Draw
Aqua
Draw
Aries
【样例 2】
见选手目录下的 battle/battle2.in 与 battle/battle2.ans。
该样例满足测试点 的约束条件。
【样例 3】
见选手目录下的 battle/battle3.in 与 battle/battle3.ans。
该样例满足测试点 的约束条件。
【数据范围】
对于所有数据,保证 , 只包含 01,$1 \leq p \leq n, 1 \leq l \leq r \leq n, 1 \leq x, y \leq 10^9$。
| 测试点编号 | 特殊性质 | 分值 | ||
|---|---|---|---|---|
| 无 | ||||
| A, B | ||||
| A | ||||
| A, B | ||||
| A | ||||
| C | ||||
| A, B | ||||
| 无 | ||||
特殊性质 A:只有查询操作,没有修改操作。
特殊性质 B:所有 都在 01 中均匀独立选取。
特殊性质 C:对于所有查询操作有 。