fork download
  1. #include <iostream>
  2. #include <cstdio>
  3. using namespace std;
  4.  
  5. long long int gcd(long long int u, long long int v) {
  6. if(u==v) return u;
  7. if(u==0) return v;
  8. if(v==0) return u;
  9. if(~u & 1) {
  10. if(v&1) return gcd(u>>1, v);
  11. else return gcd(u>>1, v>>1)<<1;
  12. }
  13. if(~v & 1) return gcd(u, v>>1);
  14. if(u>v) return gcd((u-v)>>1, v);
  15. return gcd((v-u)>>1, u);
  16. }
  17.  
  18. int main() {
  19. int t;
  20. long long int a, b, x, y, m, n;
  21. scanf("%d", &t);
  22. while(t--) {
  23. scanf("%lld%lld%lld%lld", &a, &b, &x, &y);
  24. m=gcd(a, b), n=gcd(x, y);
  25. if(m==n) printf("YES\n");
  26. else printf("NO\n");
  27. }
  28. return 0;
  29. }
Success #stdin #stdout 0s 3344KB
stdin
3
1 1 2 3
2 1 2 3
3 3 1 1
stdout
YES
YES
NO