B4528 [语言月赛 202604] 生日邀请

题目描述

Alice 快要过生日了,她邀请了很多位好朋友参加她的生日宴会。所有朋友的名字长度均不超过 $10$,且仅由大小写字母构成。 然而她的朋友们都很忙,不确定能否参加,无法给她一个明确的答复。她收到的回复可分为下面三类(其中 $A,B$ 为任意人名): - `A=>B`:如果 $A$ 参加,那么 $B$ 也参加。 - `ABob

输入格式

输入的第一行有一个字符串 $s$,表示所有朋友的回复形成的字符串。 第二行有一个正整数 $q$,表示问题的个数。 之后 $q$ 行,每行有两个人名 $u,v$,表示一个问题。

输出格式

对于每个问题,输出一行一个字符串:“如果 $u$ 参加,那么 $v$ 一定参加”若成立,输出 `Yes`,否则输出 `No`。

说明/提示

【样例 1 解释】 对于每个询问我们依次解释: - 根据 `Andrea=>Bob`,如果 Andrea 参加,那么 Bob 参加。 - 根据 `CindyDora`,如果 Dora 参加,那么 Cindy 参加。 - 如果 Dora 参加,那么 Cindy 会参加,而这也就意味着 Bob 会参加,因此,如果 Dora 参加,那么 Bob 参加。 - 对于第 $4$ 组询问,可以构造“仅 Andrea, Bob 参加”的反例,因此,如果 Andrea 参加,则 Cindy 不一定参加。 - 对于第 $5,6$ 组询问,由于我们不知道关于 Mike 的任何回复,显然答案是不一定。 - 但是第 $7$ 组询问不一样——“如果 Mike 参加,那么 Mike 一定参加了”是一句废话,这是永远成立的。 【数据范围】 对于全部数据,保证: - $s$ 由不超过 $500$ 个不重复人名组成,人名之间的间隔必为 `` 和 `` 之一。 - 每个人名仅由英文字母组成,首字母大写,其他字母小写,且长度 $\le 10$,并且这些人名都不是 `Alice`。 - $1\le q\le 1000$。 本题共有 $10$ 个测试数据,部分测试数据有特殊性质,具体地: ::cute-table{tuack} |测试点编号|特殊性质 A|特殊性质 B|特殊性质 C| |:-:|:-:|:-:|:-:| |$1$|有|有|有| |$2$|无|有|有| |$3$|有|无|有| |$4,5$|无|无|有| |$6$|有|有|无| |$7$|无|有|无| |$8$|有|无|无| |$9,10$|无|无|无| - 特殊性质 A:保证询问中的 $u$ 一定是 $s$ 中的第一个人名(例如样例 1 中,保证 $u$ 为 `Andrea`)。 - 特殊性质 B:保证 $s$ 中人名之间的连接符一定为 `=>`。 - 特殊性质 C:保证 $s$ 中人名的长度为 $1$。