2012/02/14

[zerojudge] a022 迴文

題目:https://zerojudge.tw/ShowProblem?problemid=a022
說明:Java 用兩個指標,分別從字串的頭及尾來比對,兩指標逐漸往中間移動,當發現字元不同後,立即結束比對,印出結果為否,若全部比對結束接正確,印出結果為是。Python 就將 string 直接 reverse,如果兩者相同就是迴文。
補充:https://stackoverflow.com/questions/509211/understanding-slicing

Java 版
import java.util.Scanner;

public class A022 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            String s = in.nextLine();
            boolean r = true;
            for (int i = 0; i < s.length() / 2; i++) {
                if (s.charAt(i) != s.charAt(s.length()-1-i)) {
                    r = false;
                    break;
                }
            }
            if (r)
                System.out.println("yes");
            else
                System.out.println("no");
        }
    }
}
Python 版 (2022.07)
s = input()
if s == s[::-1]:
    print('yes')
else:
    print('no')

2 則留言:

  1. 大大我用您的程式碼去解題,有出現錯誤,想問大大說有哪裡錯了嗎?

    回覆刪除
    回覆
    1. 我執行後沒有發現錯誤,有錯誤訊息嗎?

      刪除