[51nod1247]可能的路径(思维题)
题意:给定(a,b),(x,y) ,(a,b)可以通向(a-b,b) (a+b,b) (a,a+b) (a,a-b) 求能否到达(x,y)
解题关键:类似于更相减损,变换过程中gcd是一样的。
#include<bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ll n,a,b,c,d; cin>>n; for(int i=0;i<n;i++){ cin>>a>>b>>c>>d; if(__gcd(a,b)==__gcd(c,d)) cout<<"Yes\n"; else cout<<"No\n"; } return 0; }