ACM 辗转相除法(求最大公约数 )
2015-08-17 22:17
399 查看
Description
There is a hill with n holes around. The holes are signed from 0 to n-1.
A rabbit must hide in one of the holes. A wolf searches the rabbit in anticlockwise order. The first hole he get into is the one signed with 0. Then he will get into the hole every m holes. For example, m=2 and n=6, the wolf will get into the holes which are signed 0,2,4,0. If the rabbit hides in the hole which signed 1,3 or 5, she will survive. So we call these holes the safe holes.
Input
The 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).
Output
For 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
解题思路:
题目就是让我们求最大公约数,如果两个数的最大公约数等于1,就输出NO,否则输出YES。我们用辗转相除法求最大公约数
程序代码:
There is a hill with n holes around. The holes are signed from 0 to n-1.
A rabbit must hide in one of the holes. A wolf searches the rabbit in anticlockwise order. The first hole he get into is the one signed with 0. Then he will get into the hole every m holes. For example, m=2 and n=6, the wolf will get into the holes which are signed 0,2,4,0. If the rabbit hides in the hole which signed 1,3 or 5, she will survive. So we call these holes the safe holes.
Input
The 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).
Output
For 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
解题思路:
题目就是让我们求最大公约数,如果两个数的最大公约数等于1,就输出NO,否则输出YES。我们用辗转相除法求最大公约数
程序代码:
#include <iostream> using namespace std; int gcd(int a,int b) { return b==0 ? a : gcd(b,a%b); } int main() { int t; cin>>t; while(t--) { int m,n; cin>>m>>n; int p=gcd(m,n); if(p==1) cout<<"NO"<<endl; else cout<<"YES"<<endl; } return 0; }
相关文章推荐
- Linux 下Sqlite3 的安装及应用
- tomcat 交给 nginx处理后,页面去掉端口号
- spring源码剖析分享
- Hello JSP!——指令元素之include篇
- 【LeetCode】15_3Sum
- Bootstrap兼容处理
- C++ 虚函数表解析
- OC协议应用之代理者模式
- 老罗安卓教程 在TextView文本中跳转到Activity
- Java遍历文件夹的两种方法(非递归和递归) .
- 深入了解Windows句柄到底是什么
- Data URI(转)
- 类的封装和访问控制
- Struts2中关于"There is no Action mapped for namespace / and action name"的总结
- 传统三层结构和MVC之于贫血模式和充血模式以及领域建模
- 【转载】Think as Customer 以客户为中心的测试理念
- leetcode 133: Clone Graph
- VMware安装linux虚拟系统如何链接外网?
- Android软件安全与逆向分析-笔记(1)
- Makefile 中:= ?= += =的区别