#P17648. [IO 2025 #1] 与 Boss 的战斗
[IO 2025 #1] 与 Boss 的战斗
题目描述
大黄蜂(Hornet)有 项战斗属性,第 项属性的数值是整数 。在漫长的冒险中,她遇到了 个 Boss,每个 Boss 也有这 项属性:第 个 Boss 的第 项属性为 。
大黄蜂不一定按编号从小到大的顺序与 Boss 战斗,也不一定只与每个 Boss 战斗一次。她有一个长度为 的 Boss 编号数组 ,用来确定她与哪些 Boss 战斗。数组 中的数可以重复,也不要求 到 中的每个编号都出现。
在冒险中,可能发生以下两种事件:
1 i x:大黄蜂的第 项属性增加 ,即令 。2 j s:大黄蜂与编号为 的 Boss 战斗。如果 为win,记录表示她获胜;如果 为loss,记录表示她落败。
大黄蜂能击败编号为 的 Boss,当且仅当她的每项属性都不低于该 Boss 的对应属性,即对任意 ,都有 。因此,只要 大黄蜂有至少一项属性低于 Boss 的对应属性,她就会落败。
遗憾的是,数组中的数值 已经遗失,但所有事件的记录仍然保留。请判断是否存在一个数组 ,使所有战斗的实际结果都与记录一致,还是记录中存在错误。同一个下标 在不同事件中出现时,始终代表同一个 。
输入格式
第一行包含三个整数 ,分别表示战斗属性数、Boss 数和事件数,满足 。数组 的长度也是 。
第二行包含 个整数 ,表示 大黄蜂各项属性的初始数值,满足 。
接下来 行,每行包含 个整数 ,表示一个 Boss 的各项属性,满足 。
接下来 行,按照题目描述中的格式给出事件记录。其中,,,,且 为 win 或 loss。
输出格式
如果存在一个数组 ,使事件记录正确,输出 Yes;否则输出 No。
注意,不要求 大黄蜂至少与每个 Boss 战斗一次。
3 2 4
0 0 0
1 2 0
0 2 1
1 1 2
1 2 3
2 3 loss
2 2 win
Yes
3 2 5
0 0 0
1 0 2
0 2 1
1 1 2
1 2 3
2 2 win
1 3 3
2 3 loss
No
提示
样例 1 解释
可以选择 ,其中 表示任意 Boss 编号,因为记录中没有关于这些位置的信息。
开始与 Boss 战斗前,大黄蜂的属性为 。凭借这些属性,她能击败第一个 Boss,但会输给第二个 Boss。
样例 2 解释
不存在符合要求的数组。在最后一次事件前,大黄蜂的属性为 ,因此她不会输给任何一个 Boss。