poj3372
2016-06-12 21:16
204 查看
Candy Distribution
Description
N children standing in circle who are numbered 1 through N clockwise are waiting their candies. Their teacher distributes the candies by in the following way:
First the teacher gives child No.1 and No.2 a candy each. Then he walks clockwise along the circle, skipping one child (child No.3) and giving the next one (child No.4) a candy. And then he goes on his walk, skipping two children (child No.5 and No.6) and giving the next one (child No.7) a candy. And so on.
Now you have to tell the teacher whether all the children will get at least one candy?
Input
The input consists of several data sets, each containing a positive integer N (2 ≤ N ≤ 1,000,000,000).
Output
For each data set the output should be either "YES" or "NO".
Sample Input
Sample Output
Source
POJ Monthly--2007.09.09, ailyanlu@zsu
这是一个复杂的数学问题,但是可以通过小数据猜测出来,最后发现只要是2的幂就行,否则不行
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 5868 | Accepted: 3274 |
N children standing in circle who are numbered 1 through N clockwise are waiting their candies. Their teacher distributes the candies by in the following way:
First the teacher gives child No.1 and No.2 a candy each. Then he walks clockwise along the circle, skipping one child (child No.3) and giving the next one (child No.4) a candy. And then he goes on his walk, skipping two children (child No.5 and No.6) and giving the next one (child No.7) a candy. And so on.
Now you have to tell the teacher whether all the children will get at least one candy?
Input
The input consists of several data sets, each containing a positive integer N (2 ≤ N ≤ 1,000,000,000).
Output
For each data set the output should be either "YES" or "NO".
Sample Input
2 3 4
Sample Output
YES NO YES
Source
POJ Monthly--2007.09.09, ailyanlu@zsu
这是一个复杂的数学问题,但是可以通过小数据猜测出来,最后发现只要是2的幂就行,否则不行
#include<cstdio> using namespace std; int main() { int n; while(scanf("%d",&n)==1) { while(n%2==0) n/= 2; if(n==1) printf("YES\n"); else printf("NO\n"); } return 0; }
相关文章推荐
- [HIHO1318]非法二进制(动态规划)
- What is URL?
- aiRPC(远程调用工具)
- 中断处理机制与工作队列
- 获取本机ip地址
- EditText超出字数限制,给用户提示
- 平面图转换成对偶图的应用
- 字符串的扩展与修复
- IBM APPSCAN 之安全学习
- 学习进度表第十五周
- Oracle内置函数
- 关于MySQL数据库的MyISAM引擎的定时碎片整理.
- mybaits-config.xml
- spark sql 功能测试及总结 (1.4.1版本)
- ListView的常见使用技巧和扩展
- 软件开发文档编写规范
- UVA - 1632 Alibaba 区间DP
- 2016 UESTC Training for Graph Theory
- 802.15.4和他的孙子们
- 如何让进程运行在指定的cpu上