您的位置:首页 > 其它

UVA 401

2017-04-06 19:50 253 查看
描述题目:点击打开链接

/*
思路:回文词,头尾字符依次移动判断是否相同便可。
镜像串,建立镜像串表,将头字符根据镜像串表转换,
然后跟尾字符依次移动判断是否相同便可。
*/
import java.util.Scanner;
public class Main
{
public static char Rev(char ch)
{
String rev="A 3 HIL JM O 2TUVWXY51SE Z 8 ";
if(Character.isUpperCase(ch))
return rev.charAt(ch-'A');
return rev.charAt(ch-'0'+25);
}
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
String []print={" -- is not a palindrome."," -- is a regular palindrome.",
" -- is a mirrored string."," -- is a mirrored palindrome."};
while(cin.hasNext())
{
String str=cin.next();
int p=1,m=2;
int n=str.length();
for(int i=0;i<=n/2;++i)
{
if(str.charAt(i)!=str.charAt(n-i-1))
p=0;
if(Rev(str.charAt(i))!=str.charAt(n-i-1))
m=0;
}
System.out.println(str+print[p+m]);
System.out.println();
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: