HDOJ/HDU 2163 Palindromes(判断回文串~)
Posted 谙忆
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDOJ/HDU 2163 Palindromes(判断回文串~)相关的知识,希望对你有一定的参考价值。
Problem Description
Write a program to determine whether a word is a palindrome. A palindrome is a sequence of characters that is identical to the string when the characters are placed in reverse order. For example, the following strings are palindromes: “ABCCBA”, “A”, and “AMA”. The following strings are not palindromes: “HELLO”, “ABAB” and “PPA”.
Input
The input file will consist of up to 100 lines, where each line contains at least 1 and at most 52 characters. Your program should stop processing the input when the input string equals “STOP”. You may assume that input file consists of exclusively uppercase letters; no lowercase letters, punctuation marks, digits, or whitespace will be included within each word.
Output
A single line of output should be generated for each string. The line should include “#”, followed by the problem number, followed by a colon and a space, followed by the string “YES” or “NO”.
Sample Input
ABCCBA
A
HELLO
ABAB
AMA
ABAB
PPA
STOP
Sample Output
#1: YES
#2: YES
#3: NO
#4: NO
#5: YES
#6: NO
#7: NO
就是简单的判断回文串的问题,遇到STOP结束程序。
import java.util.Scanner;
/**
* @author 陈浩翔
* 2016-6-5
*/
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t =1;
while(sc.hasNext()){
String str =sc.next();
if("STOP".equals(str)){
return;
}
System.out.print("#"+(t++)+": ");
boolean isProgram = true;
for(int i=0,j=str.length()-1;i<j;i++,j--){
if(str.charAt(i)!=str.charAt(j)){
isProgram=false;
break;
}
}
if(isProgram){
System.out.println("YES");
}else{
System.out.println("NO");
}
}
}
}
以上是关于HDOJ/HDU 2163 Palindromes(判断回文串~)的主要内容,如果未能解决你的问题,请参考以下文章
HDOJ/HDU 1321 Reverse Text(倒序输出~)
HDOJ/HDU 1113 Word Amalgamation(字典顺序~Map)