完美平方数
题目描述:
如果整个整数X本身是完全平方数,同时它的每一位数字也都是完全平方数,我们就称X是完美平方数。 前几个完美平方数是 0、1、4、9、100、144…
请你计算第 2020 个完美平方数是多少?
#include <bits/stdc++.h>
using namespace std;
bool judge(long long x)
{
if(x==0||x==1)
return 1;
else
{
for(long long i=2;i<=x/2;i++)
{
if(x/i==i&&x%i==0)
{return 1;}
}
return 0;
}
}
bool caculate(long long x)
{long long i=0,flag=0,t=x,a;
while(t)
{ a=t%10;
if(judge(a))
flag++;
else
return 0;
t/=10;
i++;
}
if(flag==i)
return 1;
}
int main()
{
long long t=2000,i=-1,ans;
while(t)
{i++;ans=i*i;
if(caculate(ans))
t--;
}
cout<<ans<<endl;
return 0;
}
ans: