B
与偶数的加减和异或运算不会改变奇偶性,与奇数的加减和异或运算会改变奇偶性,并且题目保证一定可以从x得到y 则只需要判断x与y奇偶性和n个数的运算会不会改变结果即可
#include<bits/stdc++.h>
using namespace std;
void solve()
{
long long n,x,y;
cin>>n>>x>>y;
int ji=0;
for(int i=1;i<=n;i++){
int temp;
cin>>temp;
if(temp&1)ji++;
}
ji=ji&1;
x=x&1;
y=y&1;
bool alice=false;
if((x&&y&&!ji)||(!x&&!y&&!ji)||(x&&!y&&ji)||(!x&&y&&ji)){
alice=true;
}
if(alice)cout<<"Alice\n";
else cout<<"Bob\n";
}
int main()
{
int t;
cin>>t;
while(t--)
{
solve();
}
}
502

被折叠的 条评论
为什么被折叠?



