A6467 | 异或和
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
给定两个数组:长度为 $n$ 的数组 $a$ 和长度为 $m$ 的数组 $b$。你可以进行任意多次如下操作:
请你求出在进行若干次操作之后,数组 $a$ 的异或和的最小值与最大值。
- 选择 $b$ 中的任意一个元素 $b_j$,并将 所有 $a$ 中的元素同时替换为 $a_i \leftarrow a_i \;|\; b_j$(按位或)。
请你求出在进行若干次操作之后,数组 $a$ 的异或和的最小值与最大值。
你可以进行 $0$ 次或多次操作;也可以多次选择同一个 $b_j$(再次选择对结果不再产生额外影响)。
输入格式
多组测试数据。
- 第二行 $n$ 个整数 $a_1,a_2,\ldots,a_n$。
- 第三行 $m$ 个整数 $b_1,b_2,\ldots,b_m$。
保证所有测试数据中 $n$ 的总和与 $m$ 的总和均不超过 $2\times 10^5$。
元素范围:$0 \le a_i,b_i \le 10^9$。
- 第一行一个整数 $t$($1 \le t \le 10^4$),表示测试组数。
- 对于每组数据:
- 第二行 $n$ 个整数 $a_1,a_2,\ldots,a_n$。
- 第三行 $m$ 个整数 $b_1,b_2,\ldots,b_m$。
保证所有测试数据中 $n$ 的总和与 $m$ 的总和均不超过 $2\times 10^5$。
元素范围:$0 \le a_i,b_i \le 10^9$。
输出格式
对于每组数据,输出一行两个整数,分别表示最小可能异或和与最大可能异或和。
输入输出样例
输入 #1
2 2 3 0 1 1 2 3 3 1 1 1 2 1
输出 #1
0 1 2 3
说明/提示
$1 \leq t \leq 10^4$,$1 \leq n, m \leq 2 \times 10^5$,$0 \leq a_i, b_i \leq 10^9$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?