#2706. Sam的序列变换
Sam的序列变换
题目描述
Sam 有一个序列 包含 个整数,分别为 。
现在 Sam 每次可以进行一次操作,操作分 步:
- 计算 。
- Sam 选择一个下标 进行赋值 。
现在 Sam 想知道,要将 序列变成 序列最少需要花费多少次操作?
P.S. 其中 是异或()操作,在 C++ 中可以用 a^b 来表示。
输入格式
输入第一行包含一个整数 表示序列长度。
输入第二行包含 个整数,表示原序列中的数字 。
输入第三行包含 个整数,表示目标序列的数字 。
输出格式
输出一个整数表示最少的操作次数。
输入输出样例 #1
输入 #1
3
0 1 2
2 0 1
输出 #1
4
输入输出样例 #2
输入 #2
4
0 1 2 3
2 0 1 3
输出 #2
3
说明/提示
数据范围
对于 的数据满足: 。
对于另外 的数据满足: 且 在二进制下每一位均为 。
对于 的数据满足:。
且题目保证一定有解。
样例解释1
每一次操作选择的 依次是:。
相关
在下列比赛中: