HDU-5512-Pagodas
来源:互联网 发布:网络验证系统哪个好 编辑:程序博客网 时间:2024/06/04 05:13
ACM模版
描述
题解
看似是博弈论,其实最后能够被选取的点数只有
测试代码
One:GCD最大公约数
// AC 模版通过#include <iostream>using namespace std;int n, a, b;int gcd(int x, int y){ if (!x || !y) { return x > y ? x : y; } for (int t; t = x % y, t; x = y, y = t) ; return y;}int main(int argc, const char * argv[]){ int T; cin >> T; int res; for (int i = 1; i <= T; i++) { cin >> n >> a >> b; res = gcd(a, b); if ((n / res) & 1) { printf("Case #%d: Yuwgna\n", i); } else { printf("Case #%d: Iaka\n", i); } } return 0;}
Two:快速GCD
// AC 模版通过#include <iostream>using namespace std;int n, a, b;int kgcd(int a, int b){ if (a == 0) { return b; } if (b == 0) { return a; } if (!(a & 1) && !(b & 1)) { return kgcd(a >> 1, b >> 1) << 1; } else if (!(b & 1)) { return kgcd(a, b >> 1); } else if (!(a & 1)) { return kgcd(a >> 1, b); } else { return kgcd(abs(a - b), min(a, b)); }}int main(int argc, const char * argv[]){ int T; cin >> T; int res; for (int i = 1; i <= T; i++) { cin >> n >> a >> b; res = kgcd(a, b); if ((n / res) & 1) { printf("Case #%d: Yuwgna\n", i); } else { printf("Case #%d: Iaka\n", i); } } return 0;}
Three:
// AC 模版通过#include <iostream>using namespace std;int n, a, b;/* * 求x,y使得gcd(a, b) = a * x + b * y; */int extgcd(int a, int b, int &x, int &y){ if (b == 0) { x = 1; y = 0; return a; } int d = extgcd(b, a % b, x, y); int t = x; x = y; y = t - a / b * y; return d;}int main(int argc, const char * argv[]){ int T; cin >> T; int res, x, y; for (int i = 1; i <= T; i++) { cin >> n >> a >> b; res = extgcd(a, b, x, y); if ((n / res) & 1) { printf("Case #%d: Yuwgna\n", i); } else { printf("Case #%d: Iaka\n", i); } } return 0;}
测试结果
三种模版测试均通过,不过第二种快速
阅读全文
0 0
- HDU 5512 Pagodas
- HDU-5512 Pagodas(GCD)
- hdu 5512 Pagodas
- HDU 5512 Pagodas【博弈】
- HDU 5512 Pagodas
- 【HDU 5512 Pagodas】
- HDU 5512 Pagodas(GCD)
- hdu 5512 Pagodas gcd()
- HDU 5512 Pagodas
- HDU-5512-Pagodas
- HDU 5512 Pagodas (gcd)
- hdu 5512 Pagodas(水题)
- HDU 5512 Pagodas (扩展欧几里德)
- 思维 hdu 5512(Pagodas)
- HDU 5512 Pagodas(分析)
- Pagodas HDU
- HDU-5512-Pagodas【2015沈阳赛区】
- 数论-沈阳站-hdu-5512-Pagodas-水题
- python删除重复文件代码
- 【python】采集免费代理ip并验证可用性后存储到文件
- slidingmenu左右侧滑页面
- 火狐浏览器安全插件
- js实现复制到剪切板
- HDU-5512-Pagodas
- bzoj4953 [Wf2017]Posterize(区间dp)
- bzoj 1629: [Usaco2007 Demo]Cow Acrobats(贪心排序)
- GoTo 递归
- Ubuntu下apt-get安装与pip安装的区别
- LightOJ
- IT笔试--动态规划--货币找零问题
- 第一周总结(二)
- 加工零件-execution