CodeForces 635C XOR Equation 数学 公式

    xiaoxiao2026-01-06  11

    #include<stdio.h> #include<string> #include<cstring> #include<queue> #include<algorithm> #include<functional> #include<vector> #include<iomanip> #include<math.h> #include<iostream> #include<sstream> #include<set> #include<climits> #include<map> #include<bitset> using namespace std; int main() { cin.sync_with_stdio(false); long long s,x,Ans=0; cin>>s>>x; //a + b = (a Xor b) + (a & b) * 2 ; //a + b = s ; a Xor b = x ; //s - x = (a & b) * 2; if ((s-x>=0)&&(s-x)%2==0) { long long Andsum = (s - x) >> 1; int cnt = 0; bool flag = true; if(s==x) Ans = -2; while(x) { if(x&1) { cnt++; if(Andsum&1) flag = false; } if (!flag) break; x>>=1; Andsum>>=1; } if (!flag) Ans=0; else Ans+=(1LL<<cnt); } cout<<Ans; return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-1305701.html
    最新回复(0)