> 文档中心 > 完全平方回文数

完全平方回文数

题目描述

个数如果是另一个整数的完全平方,那么我们就称这个数为完全平方数,也叫平方数。例如:16,36,121 等。

一个数的各位数码如果是左右对称的,那么它就被称作回文数,例如:1221, 12344321, 5665 等。

你的任务是判断一个数是否同时满足上述两个条件,如果满足则输出"Yes", 否则输出"No"。

输入

一个非负整数n,代表待验证的数。

输出

判断 n 是否同时满足上述两个条件,如果满足则输出"Yes", 否则输出"No"。占一行

请注意输出字母的大小写!!!

输入样例1

121

输出样例1

Yes

输入样例2

625

输出样例2

No

CODE

#includeusing namespace std;long long n,s;bool p(long long x){int b[20],wei=0;while(x){b[++wei]=x%10;x/=10;}for(int i=1;i<=wei/2;i++) if(b[i]!=b[wei-i+1]) return false;return true;}int main(){cin>>n;s=sqrt(n);if(s*s!=n||!p(n)){cout<<"No";return 0;}cout<<"Yes";return 0;}

在这里插入图片描述

天天赞天天看,我们明天再见,拜拜!