题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2053
解题思路:有n 盏灯,0,1表示开关两个状态,第i次时:如果是i的倍数就改变状态,最后输出第n盏灯的状态,刚开始没弄明白题目的意思!
代码如下:
#include<stdio.h>
#define ON 1
#define OFF 0
int main()
{
int n, time, i;
while (scanf("%d",&n) != EOF)
{
time = 0;
for (i = 1; i <= n; i++)
if (n%i == 0)
time++;
if(time%2 == 0)
printf("%d\n",OFF);
else
printf("%d\n",ON);
}
return 0;
}