1.题目大概 给你一个公约数n(1≤n<2^31 ),找到两个整数x,y;条件是x与y不相等,gcd(x,y)=n且1<=x,y<2^63;在以上条件的基础上,让x,y异或结果尽可能小。 2.题目分析 从题目给的两组例子可以看出异或的最小值就是n;因为n是x,y的最大公约数,所以x,y 都是n的倍数,那么如果n为01时,我的x,y可在后面加上很多个0(不超过31个)。 3.代码如下 #include<bits/stdc++.h> using namespace std; int main() { int t; cin>>t; int i; for(i=...