暑假集训(4)第五弹——— 数论(hdu1222)

题意概括:那天以后,你好说歹说,都快炼成三寸不烂之舍之际,小A
总算不在摆着死人脸,鼓着死鱼眼。有了点恢复的征兆。可孟子这家伙
说的话还是有点道理,那什么天将降....额,总之,由于贤者法阵未完
成,而小A又迟迟不现身,FFF团团长连下七道圣火令追杀你们,最先赶
到地,机械化部队,它们除了智能不高外,可以说是无懈可击。
这正是你要利用的一点,利用他们的行动轨迹,躲藏起来。


问题分析:首先用辗转相除法求得gcd(n,m),若n>m 则gcd(n,m)为一可逃
反之,非一可逃

 1 #include "cstdio"
 2 
 3 int main()
 4 {
 5     int m,n,t,x;
 6     scanf ("%d",&t);
 7     while (t-- && scanf("%d%d",&n,&m))
 8     {
 9         while(n % m != 0)
10         {
11             x = m;
12             m = n%m;
13             n = x;
14         }
15         if (n >= m)
16           printf ("%s
",m==1?"NO":"YES");
17         else
18           printf ("%s
",m==1?"YES":"NO");
19     }
20     return 0;
21 }
View Code