#P14457. [ICPC 2025 Xi'an R] Killing Bits
[ICPC 2025 Xi'an R] Killing Bits
Description
给定两个长度相同的数组 和 ,它们都由 个非负整数组成。你可以对数组 执行任意次数(可能为零次)以下操作:
- 首先,选择一个 的排列 ;
- 然后,对于每个 ,执行赋值操作 ,其中 表示按位与运算(bitwise AND)。
你需要判断,是否有可能通过若干次(可能为零次)这样的操作,将数组 转换为数组 。
Input Format
输入包含多个测试用例。
第一行包含一个整数 (),表示测试用例的数量。
对于每个测试用例:
- 第一行包含一个整数 (),表示数组 和 的长度;
- 第二行包含 个整数 (),表示数组 的元素;
- 第三行包含 个整数 (),表示数组 的元素。
保证所有测试用例中 的总和不超过 。
Output Format
对于每个测试用例,输出一行结果:
- 如果可以将 转换为 ,输出
Yes; - 否则输出
No。
输出时大小写不敏感。例如,yEs、yes、Yes 和 YES 都会被视为正确回答。
4
3
0 1 2
2 1 0
5
1 0 1 3 4
0 0 1 1 4
8
1 2 3 4 5 6 7 7
1 2 3 4 5 6 7 7
8
7 7 7 7 7 7 7 7
1 2 3 4 5 6 7 7
No
Yes
Yes
No
Hint
在第一个测试用例中,我们至少需要执行一次操作才能将 转换为 。
注意到由于 ,所以无论选择怎样的排列 ,都有 。
然而,,因此无论怎样选择排列, 都不可能变为 。因此答案是 No。
在第二个测试用例中,可以选择排列 。执行操作后, 被转换为 。
在第三个测试用例中, 与 相等,因此无需执行任何操作。
翻译由 ChatGPT-5 完成
京公网安备 11011102002149号