欢迎来到PJCK的博客

(reverse)Palindromes hdu2163

Palindromes

链接:http://acm.hdu.edu.cn/showproblem.php?pid=2163


(此题是为了对于JAVA温故知新的)

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
 

JAVA代码:

import java.util.Scanner;

/**
 * 
 */

/**
 * @author lenovo
 *
 */
public class Main {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int i = 1;
        while(input.hasNextLine()) {
            String string = input.nextLine();
            if(string.equals("STOP")) {
                break;
            }
            else{StringBuffer stringBuffer = new StringBuffer(string);
            String string2 = stringBuffer.reverse().toString();
            if(string2.equals(string)) {    # 注意JAVA比较时是用equal()方法的。
                System.out.println("#" + i + ": YES");
            }
            else {
                System.out.println("#" + i + ": NO");
            }
            i++;
            }
        }
    }

}

 

 

C++代码:

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main()
{
    int T=0;
    string a;
    while(cin>>a)
    {
        if(a=="STOP")
            break;
        T++;
        string b;
        b=a;
        reverse(b.begin(),b.end());
        if(b==a)
            printf("#%d: YES\n",T);
        else
            printf("#%d: NO\n",T);
    }
    return 0;
}

 

posted @ 2018-09-12 21:54  PJCK  阅读(91)  评论(0编辑  收藏  举报