CF282C XOR and OR
题目描述
比特兰人是非常奇特的民族。他们做所有事情的方式都与众不同。他们有自己的字母表,因此对于字符串也有不同的定义。
一个比特兰字符串是只由字符 $0$ 和 $1$ 组成的字符串。
BitHaval(比特兰的市长)喜欢玩比特兰字符串。他会取一个比特兰字符串 $a$,并对其进行若干(可以为零次)操作。在一次操作中,市长可以取字符串中任意两个相邻的字符,将其中一个记为 $x$,另一个记为 $y$。然后他计算两个值 $p$ 和 $q$:$p = x \, xor\, y$,$q = x \, or\, y$。随后,他把这两个字符中的一个替换为 $p$,另一个替换为 $q$。
$xor$ 操作是按位异或操作,$or$ 操作是按位或操作。
例如,一次操作可以将字符串 $11$ 变成 $10$ 或 $01$。字符串 $1$ 不能再变为任何其他字符串。
给定两个比特兰字符串 $a$ 和 $b$,请你判断 BitHaval 能否通过若干次上述操作将字符串 $a$ 变成字符串 $b$。
输入格式
第一行输入比特兰字符串 $a$,第二行输入比特兰字符串 $b$。两个字符串长度可能不同。
保证输入的字符串只包含字符 $0$ 和 $1$。字符串非空,长度不超过 $10^{6}$。
输出格式
如果 $a$ 能被变换为 $b$,输出“YES”;否则输出“NO”。请不要输出引号。
说明/提示
由 ChatGPT 5 翻译