abc
unknown
c_cpp
2 years ago
1.3 kB
3
Indexable
#include<cstdio> #include<iostream> #include<cstdlib> #include<cmath> #include<ctime> #include<bitset> #include<cstring> #include<algorithm> #include<map> #include<string> #include<queue> #include<vector> using namespace std; typedef long long ll; typedef unsigned long long ull; ll read() { ll x=0,f=1;char c=getchar(); while(c<'0'||c>'9') { if(c=='-') f=-1; c=getchar(); } while(c>='0'&&c<='9') { x=x*10+c-'0'; c=getchar(); } return x*f; } int main() { freopen("guess.in", "r", stdin); freopen("guess.out", "w", stdout); int T = read(); while(T--) { ull a,b; cin>>a>>b; int now = 0,ans = 0; if(b & 1) { printf("1 0\n"); continue; } if(a & 1) { printf("1 1\n"); continue; } if (a % 4 != 0) { printf("1 1\n"); continue; } now = 1; ull ta = 2, tb = 1; // 已知 a/ta为偶数,b/tb为偶数 while (1) { now ++; if (b % (2 * ta * 2) != 0) { // a/ta为偶数,判断b/(2*ta)是否为偶数 ans = 0; break; } else { tb *= 4;; } if (a % (2 * tb * 2) != 0) { //b/tb为偶数,判断a/(2*tb)是否为偶数 ans = 1; break; } else { ta *= 4; } } printf("%d %d\n",now,ans); } return 0; }
Editor is loading...