题目1183:守形数

题目描述:

守形数是这样一种整数,它的平方的低位部分等于它本身。
比如25的平方是625,低位部分是25,因此25是一个守形数。
编一个程序,判断N是否为守形数。

输入:

输入包括1个整数N,2<=N<100。

输出:

可能有多组测试数据,对于每组数据,
输出"Yes!”表示N是守形数。
输出"No!”表示N不是守形数。

样例输入:
25
4
样例输出:
Yes!
No!
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;

class Main
{
	public static final boolean DEBUG = false;
	
	public static void main(String[] args) throws IOException
	{
		Scanner cin;
		
		if (DEBUG) {
			cin = new Scanner(new FileReader("d:\\OJ\\uva_in.txt"));
		} else {
			cin = new Scanner(new InputStreamReader(System.in));
		}
		
		while (cin.hasNext()) {
			int n = cin.nextInt();
			int m = n * n;
			
			String s1 = String.valueOf(n);
			String s2 = String.valueOf(m);
			
			int index = s2.indexOf(s1);
			if (index == s2.length() - s1.length()) {
				System.out.println("Yes!");
			} else {
				System.out.println("No!");
			}
			
		}
	}
}



你可能感兴趣的:(#,九度)