// Light, More Light (开灯与关灯)
// PC/UVa IDs: 110701/10110, Popularity: A, Success rate: average Level: 1
// Verdict: Accepted
// Submission Date: 2011-06-10
// UVa Run Time: 0.304s
//
// 版权所有(C)2011,邱秋。metaphysis # yeah dot net
//
// 对于大于 1 的非平方数来说,它的因子总是成对出现的,这个是解题关键。对于 n >= 1,如果 n 为平
// 方数,它的因子总数是奇数,否则是偶数,对应题目则是奇数次开关灯后灯是亮的,偶数次是灭的,判断数
// n 是否是平方数即可。
#include <iostream>
#include <cmath>
using namespace std;
int main(int ac, char *av[])
{
unsigned int n;
while (cin >> n, n)
{
int t = sqrt(n);
cout << ((t * t == n) ? "yes" : "no") << endl;
}
return 0;
}UVa Problem 10110 Light, More Light (开灯与关灯)
最新推荐文章于 2017-08-02 21:12:23 发布
本文介绍了一个简单而有趣的算法问题——通过判断一个数是否为完全平方数来确定灯泡开关的状态。对于大于1的非平方数,其因子总是成对出现;若为平方数,则因子总数为奇数。利用此特性,可以得出开关操作后灯泡是否开启。
725

被折叠的 条评论
为什么被折叠?



