题目1183:守形数
题目1183:守形数
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:4791
解决:2483
- 题目描述:
-
守形数是这样一种整数,它的平方的低位部分等于它本身。
比如25的平方是625,低位部分是25,因此25是一个守形数。
编一个程序,判断N是否为守形数。
- 输入:
-
输入包括1个整数N,2<=N<100。
- 输出:
-
可能有多组测试数据,对于每组数据,
输出"Yes!”表示N是守形数。
输出"No!”表示N不是守形数。
- 样例输入:
-
25 4
- 样例输出:
-
Yes! No!
#include<iostream> #include<stdio.h> #include<string.h> #include<algorithm> #include<math.h> using namespace std; int main() { int n; while(scanf("%d",&n)!=EOF) { int m=n*n; bool flag =false; for(int i=1; i<=4; i++) { double k=pow(10,i); if(m%(int)k==n) { flag=true; break; } } if(flag) { cout<<"Yes!"<<endl; } else cout<<"No!"<<endl; } return 0; }