【hdu 5512】【 2015ACM/ICPC亚洲区沈阳站】Pagodas 题意&题解&代码(C++)
2016-04-20 09:53
337 查看
题目链接:
http://acm.hdu.edu.cn/showproblem.php?pid=5512
题意:
给出n个点和a,b两个初始被标记的点,每次可以选取已经被标记点中的两个点 i , j 来标记新点 i+j 或 i-j,两个人轮流标记,如果谁无法标记,谁输,输出赢的人。
题解:
首先我们发现当a,b互质时,它通过以上操作,一定能标记到1号点,接着所有点都可以标记,当a,b不互质时,多写几个数找规律发现gcd(a,b)倍数的位置都可以标记到。
代码:
http://acm.hdu.edu.cn/showproblem.php?pid=5512
题意:
给出n个点和a,b两个初始被标记的点,每次可以选取已经被标记点中的两个点 i , j 来标记新点 i+j 或 i-j,两个人轮流标记,如果谁无法标记,谁输,输出赢的人。
题解:
首先我们发现当a,b互质时,它通过以上操作,一定能标记到1号点,接着所有点都可以标记,当a,b不互质时,多写几个数找规律发现gcd(a,b)倍数的位置都可以标记到。
代码:
#include<iostream> #include<algorithm> #include<stdio.h> using namespace std; int n,T,a,b; int main() { scanf("%d",&T); for (int t=1;t<=T;t++) { scanf("%d%d%d",&n,&a,&b); int g=__gcd(a,b); int num=n/g-2; if (num%2==1) printf("Case #%d: Yuwgna\n",t); else printf("Case #%d: Iaka\n",t); } }
相关文章推荐
- 【java】关于interface成员变量的修饰符
- java web统计当前访问用户数量
- 生成MyEclipse6.5&7.5&8.0注册码的java源码 生成MyEclipse6.5&7.5&8.0注册码的java源码 MyEclipseKeyGen MyEclipse6.5&7.5&
- JAVA简单工厂模式
- ASP.NET中HyperLink超链接控件的使用方法
- spring中@ResponseBody和@JsonProperty作用
- SpringMVC 中无缓存的BasicController的设计
- asp.net实现拒绝频繁的IP访问的方法
- 干货:PHP代码20个实用技巧
- 错误排查总结-eclipse中junit test或者run main方法报错
- Spring Task定时任务
- jdk版本不一致问题
- Lua从入门到放弃--元表(操作符)
- java学习之contentprovider
- VS2008在调试时黄色箭头与实际代码行错位的解决办法
- Python学习(7)数字
- 参与团队编程的讨论郝一的角度
- C++的三种继承方式
- spring4.2.4+hibernate5.1.0+struts2.3.24整合jar包
- c++中的转码函数