Palindromes
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2317 Accepted Submission(s): 1375
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/*思路:直接用reverse()库函数将字符串逆序,判断是否相等*/#include<iostream> #include<algorithm> #include<string> using namespace std; int main() { string a; int count=1; while(cin>>a&&a!="STOP"){ cout<<"#"<<count++<<": "; string b=a; reverse(b.begin(),b.end()); if(a==b) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }