⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 3527677_wa.java

📁 北大大牛代码 1240道题的原代码 超级权威
💻 JAVA
字号:
import java.util.*;

public class Main {
	private Scanner in;
	private static HashMap <Character, Character> hm = new HashMap <Character, Character> ();

	static {
		hm.put('A', 'A');hm.put('E', '3');
		hm.put('H', 'H');hm.put('I', 'I');
		hm.put('J', 'L');hm.put('L', 'J');
		hm.put('M', 'M');hm.put('O', 'O');
		hm.put('S', '2');hm.put('T', 'T');
		hm.put('U', 'U');hm.put('V', 'V');
		hm.put('W', 'W');hm.put('X', 'X');
		hm.put('Y', 'Y');hm.put('Z', '5');
		hm.put('1', '1');hm.put('2', 'S');
		hm.put('5', 'Z');hm.put('8', '8');
	}

	public static void main(String [] args) {
		new Main().run();
	}

	private String reverse(String str) {
		String ret = "";

		for (int i = str.length() - 1; i >= 0; i--) {
			ret += str.charAt(i);
		}
		return ret;
	}

	private boolean isPalindromeString(String str) {
		return str.equals(reverse(str));
	}

	private boolean isMirroredString(String str) {
		int length = str.length();

		for (int i = 0; i < length; i++) {
			if (!hm.containsKey(str.charAt(i))) {
				return false;
			}
		}

		for (int i = 0; i < length / 2; i++) {
			if (str.charAt(i) != hm.get(str.charAt(length - i - 1))) {
				return false;
			}
		}
		return true;
	}

	private void run() {
		in = new Scanner (System.in);
		String str;
		
		while (in.hasNext()) {
			str = in.next();
			System.out.print(str + " -- ");
			boolean ispalindrome = isPalindromeString(str);
			boolean ismirrored = isMirroredString(str);
			if (!ispalindrome) {
				if (!ismirrored) {
					System.out.println("is not a palindrome.");
				} else {
					System.out.println("is a mirrored string.");
				}
			} else {
				if (!ismirrored) {
					System.out.println("is a regular palindrome.");
				} else {
					System.out.println("is a mirrored palindrome.");
				}
			}
			System.out.println();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -