CF1870B
guozhe6241 · · 题解
模拟赛时过的一道题,看了大佬的题解,感觉不用那么麻烦。
题目传送门
CF1870B
题意
给你一个长度为
思路
思路很简单。最小值就是异或奇数的情况。最大值是不异或的情况。
代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int maxn=2e5+5;
int t,n,m;
int a[maxn],b[maxn];
signed main(){
cin>>t;
while(t--){
cin>>n>>m;
int ansmin=0,minnn=0,minx=0;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=m;i++){
cin>>b[i];
minx|=b[i];
}
for(int i=1;i<=n;i++){
minnn^=a[i];
ansmin^=(a[i]|minx);
}
cout<<min(ansmin,minnn)<<" "<<max(ansmin,minnn)<<endl;
}
return 0;
}
AC记录