a022: 回文
这篇教学会示范 ZeroJudge 基础题库“a022: 回文”的解题过程。
题目需求
题目会提供不断提供一组字串,由程序判断这组字串是否为“回文”,如果是回文就印出 yes,否则印出 no ( 回文的定义为正向,反向读到的字串均相同,例如 abba、abcba 是回文 )。
题目链接:a022: 回文
解答
要判断是否为“回文”,需要将输入的文字从中间拆分为前后两个部分,接着依序比对两个部分的每个项目,前面的部分从第一个开始,后面的部分从最后一个开始,如果都相等就表示回文,只要遇到不相等的状况就不是回文。
while True:
try:
a = list(input())
length = len(a) # 取得輸入字串長度
output = 'yes' # 預設 output 為 yes
for i in range(length//2): # 使用 for 迴圈,取值到輸入字串的中間 ( 使用除法取整數 )
if a[i] != a[length-1-i]: # 如果從前方數來的項目不等於後方數來的項目
output = 'no' # 設定 output 為 no
print(output)
except:
break
微信扫码关注
抖音扫码关注