說明: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')
大大我用您的程式碼去解題,有出現錯誤,想問大大說有哪裡錯了嗎?
回覆刪除我執行後沒有發現錯誤,有錯誤訊息嗎?
刪除