HDU--2053
2015-06-06 10:05
204 查看
Switch Game
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 12748 Accepted Submission(s): 7753
[align=left]Problem Description[/align]
There are many lamps in a line. All of them are off at first. A series of operations are carried out on these lamps. On the i-th operation, the lamps whose numbers are the multiple of i change the condition ( on to off and off to
on ).
[align=left]Input[/align]
Each test case contains only a number n ( 0< n<= 10^5) in a line.
[align=left]Output[/align]
Output the condition of the n-th lamp after infinity operations ( 0 - off, 1 - on ).
[align=left]Sample Input[/align]
1 5
[align=left]Sample Output[/align]
1 0 Hinthint Consider the second test case: The initial condition : 0 0 0 0 0 … After the first operation : 1 1 1 1 1 … After the second operation : 1 0 1 0 1 … After the third operation : 1 0 0 0 1 … After the fourth operation : 1 0 0 1 1 … After the fifth operation : 1 0 0 1 0 … The later operations cannot change the condition of the fifth lamp any more. So the answer is 0.
[align=left]Author[/align]
LL
#include <iostream> using namespace std; int main() { int n; while (cin >> n) { int num=0; for (int i=1; i<=n; i++) { if (n %i ==0) num++; } if (num%2 == 0) cout << 0; else cout << 1; cout <<endl; } return 0; }
该题实际上就是一个求数因子个数的题目,刚开始我的第一思路就是打算用数组去保留每次的结果,但是很明显会超时。并且非常复杂,再仔细看看题目,看到了无限次,发现经过几次操作之后前面的一些数的结果不会改变了,然后仔细一想这就是一个求因子的!!
相关文章推荐
- 球面上两点之间的距离计算
- arduino小车入门教程——第五天(照片欣赏)
- Magic File Renamer算法分析(注册机没能写出)
- Win10预览版10134微软官方英文版ISO镜像下载地址泄露(64位)
- python函数内嵌,嵌套函数
- Graphchi介绍及BFS实现
- Memcached(四)、Memcached原理
- oracle里面的long,long raw,raw,clob,blob区别 .
- Linux ALSA声卡驱动之五:移动设备中的ALSA(ASoC)
- linux 常用命令
- Objective-C的入门(一)
- 位运算
- [Java] Webservice之定制发布WSDD教程 (二)
- 基于OpenStack的虚拟机在线迁移
- Filter和FilterChain具体的使用说明
- 工厂模式Factory – 学习HeadFirst设计模式记录
- 多线程第四篇秒杀 一个经典的多线程同步问题
- Java加密技术(四)非对称加密算法RSA
- EasyMoney算法分析(仅作为分析记录)
- 41.调用随机函数产生20个整数,并输出。