uva-10110

#include <iostream>
#include <cmath>
using namespace std;
//目标是判断因子个数是奇数还是偶数,可有不用求出因子个数,会超时
//方法是判断是不是完全平方数,如果是那么就是奇数个因子否则就是偶数个因子,因为因子成对存在;
int main(){
    long long x;//不知道为啥,用long long 就对了,int 不对
    while (cin>>x&&x!=0)
    {
        //最好处理一下浮点数陷阱
        long long q=(long long )(sqrt(x)+1e-6);//因为向下取整
        if(q*q==x) cout<<"yes\n";
        else cout<<"no\n";
    }
    return 0;
}

 

posted @ 2020-06-06 21:31  西伯利亚挖土豆  阅读(140)  评论(0编辑  收藏  举报