zoukankan      html  css  js  c++  java
  • (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
    ",T);
            else
                printf("#%d: NO
    ",T);
        }
        return 0;
    }
  • 相关阅读:
    init: cannot execve(‘XXX’):Permission denied问题
    Android自己定义之流式布局
    GDI+学习笔记(九)带插件的排序算法演示器(MFC中的GDI+实例)
    SICP 习题 (2.8) 解题总结:区间的减法
    Web
    this 与 super 反复问题?
    [Android&amp;Java]浅谈设计模式-代码篇:观察者模式Observer
    053第170题
    SonarQube4.4+Jenkins进行代码检查实例之三-单元測试分析
    总结Codeigniter的一些优秀特性
  • 原文地址:https://www.cnblogs.com/Weixu-Liu/p/9637626.html
Copyright © 2011-2022 走看看