HDU4320——GCD——Arcane Numbers 1
2015-08-25 15:01
309 查看
http://acm.hdu.edu.cn/showproblem.php?pid=4320
/* 公式:两个进制能相互转化,那么这两个进制的最小因数相同 */ /************************************************ * Author :Powatr * Created Time :2015-8-25 14:49:53 * File Name :A.cpp ************************************************/ #include <cstdio> #include <algorithm> #include <iostream> #include <sstream> #include <cstring> #include <cmath> #include <string> #include <vector> #include <queue> #include <deque> #include <stack> #include <list> #include <map> #include <set> #include <bitset> #include <cstdlib> #include <ctime> using namespace std; #define lson l, mid, rt << 1 #define rson mid + 1, r, rt << 1 | 1 typedef long long ll; const int MAXN = 1e5 + 10; const int INF = 0x3f3f3f3f; const int MOD = 1e9 + 7; long long a, b; long long gcd(long long a, long long b) { return b == 0 ? a : gcd(b, a%b); } int main() { int T; scanf("%d", &T); for(int cas = 1; cas <= T; cas++){ scanf("%I64d%I64d", &a, &b); long long c = gcd(a, b); long long d; a /= c, b /= c; int flag = 1; while(1){ if(b == 1) break; d = gcd(b, c); if(d == 1){ flag = 0; break; } b /= d; } while(1){ if(a == 1) break; d = gcd(a, c); if(d == 1){ flag = 0; break; } a /= d; } printf("Case #%d: %s\n", cas, flag == 1 ? "YES" : "NO"); } return 0; }
相关文章推荐
- Testlink集成Jira时如果出现Error咋办?
- SpringMVC自带的定时器,超好用,基于注解
- 20150825数据类型以及数据转换
- 如何让input之间无空隙
- 一些数学公式
- git克隆/更新/提交代码步骤及示意图
- js特效之_滚动标题
- Autonomous Intelligent Robotics
- RelativeLayout进行纯代码布局的理论基础
- python logging usage
- Java.lang的研究(分析包含的重要类和接口)
- 面向对象之继承(类与类之间的关系)
- H5移动前端性能优化
- Linux文件系统iNode及stat命令
- 用Java开源项目JOONE实现人工智能编程
- IOS 学习 创建表格的方法
- oracle删除表空间后 再创建同名表空间报错 OSD-04010
- [LeetCode] Edit Distance
- 微信活动页面动态加载以及封装
- 数据结构之AVL树---BST的变种