UVA 10110(开关)

There is man named ”mabu” for switching on-off light in our University. He switches on-off the lights
in a corridor. Every bulb has its own toggle switch. That is, if it is pressed then the bulb turns on.
Another press will turn it off. To save power consumption (or may be he is mad or something else)
he does a peculiar thing. If in a corridor there is n bulbs, he walks along the corridor back and forth
n times and in i-th walk he toggles only the switches whose serial is divisable by i. He does not press
any switch when coming back to his initial position. A i-th walk is defined as going down the corridor
(while doing the peculiar thing) and coming back again. Now you have to determine what is the final
condition of the last bulb. Is it on or off?
Input
The input will be an integer indicating the n’th bulb in a corridor. Which is less then or equals 232 −1.
A zero indicates the end of input. You should not process this input.
Output
Output ‘yes’ if the light is on otherwise ‘no’, in a single line.
Sample Input
3
6241
8191
0
Sample Output
no
yes
no

哈哈,刚还觉得开关的题挺有意思整理了一个,回头就让我碰上了,题解参照上篇博客:
传送门

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
   long long n,t;
    while(~scanf("%lld",&n)&&n)
    {
        t=(floor)(sqrt(n));
        if(t*t==n)
            printf("yes\n");
        else
            printf("no\n");
    }
}
发布了261 篇原创文章 · 获赞 14 · 访问量 7403

猜你喜欢

转载自blog.csdn.net/weixin_43244265/article/details/104181966