您的位置:首页 > 其它

uva 10110——Light, more light

2015-10-26 17:08 357 查看
题意:当时还挺绕人,讲的就是一个走廊里有n个灯,一个人(疯了)来回在走廊里转,走第i 圈的时候将灯数能够整除i的灯号改变一下开关,问最后的时候(走n圈的)最后一个灯是明还是暗?

思路:其实就是变向求1~n中能整除n的数的奇偶性,随便推一下,便可以看出来,只有是某个数的平方的时候才是奇数,其他均为偶,那么题目就变成判断一个数是否能开方的题!

code:
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std;

typedef long long ll;
int main()
{
ll n;
while (~scanf("%lld",&n)&&n)  //注意用long long
{
ll t=sqrt(n);
if (t*t==n)
printf("yes\n");
else
printf("no\n");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: