标签:height end ber which sign iostream with 约数 std
gcd(最大公因数)和lcm(最小公倍数)
辗转相除法求a和b的最大公因数和最小公倍数:
最小公倍数=a*b/最大公约数;
求最大公因数:
int gcd(int a,int b)
{
int temp;
if (a<b)
{
temp=a;
a=b;
b=temp;
}
while (b!=0)
{
temp=a%b;
a=b;
b=temp;
}
return a;
}
求最小公倍数:
int lcm(int x,int y)
{
return x*y/gcd(x,y);
}
题目:
InputThe input starts with a positive integer P which indicates the number of test cases. Then on the following P lines,each line consists 2 positive integer m and n(0<m,n<2147483648).
OutputFor each input m n, if safe holes exist, you should output "YES", else output "NO" in a single line.
Sample Input
2
1 2
2 2
Sample Output
NO
YES
AC代码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int gcd(int a,int b)
{
int temp;
if (a<b)
{
temp=a;
a=b;
b=temp;
}
while (b!=0)
{
temp=a%b;
a=b;
b=temp;
}
return a;
}
int main()
{
int n,m;
int t;
cin>>t;
while (t--)
{
int num=0;
cin>>m>>n;
int y = gcd(m,n);
if (y==1)
cout << "NO" << endl;
else
cout << "YES" << endl;
}
return 0;
}
标签:height end ber which sign iostream with 约数 std
原文地址:http://www.cnblogs.com/lisijie/p/7261506.html