//很简单的一个题,却因为输出时少了‘!’而wa了两次。。。
//
两种方法,第二种用函数sprintf().
int main()
{
int n;
while(scanf("%d",&n)!=EOF){
int m=n*n;
int flag=0;
int a=m%10,b=n%10;
while(n!=0){
if(a!=b) {
flag=1;
break;
}
else{
m=m/10;a=m%10;
n=n/10;b=n%10;
}
}
if(flag==1) printf("No!\n");
else printf("Yes!\n");
}
return 0;
}
#include<stdio.h>
#include<string.h>
int main()
{
int n;
while(scanf("%d",&n)!=EOF){
int m=n*n;
char s1[100],s2[100];
sprintf(s1,"%d",n); // 把整数打印到字符串中
sprintf(s2,"%d",m);
int ln=strlen(s1)-1;
int lm=strlen(s2)-1;
int count=0;
for(int i=ln;i>=0;i--){
if(s1[i]==s2[lm]) count++;
lm--;
}
if(count!=strlen(s1)) printf("No!\n");
else printf("Yes!\n");
}
return 0;
}