AtCoder ABC 147 B – Palindrome-philia Python解説

スポンサーリンク

Palindrome-philia

高八士君は回文が大好きで、回文でない文字列が許せません。高八士君は文字列を 1 回ハグするごとに、
文字列から 1 文字を選んで任意の文字に変えることができます。
文字列 S が与えられます。S を回文にするために必要なハグの最小回数を答えてください。

AtCoder Beginner Contest 「Palindrome-philia」

与えられた文字列の最初の文字と最後の文字、2番目の文字と後ろから2番目の文字・・・という作業を文字列の中心まで行いましょう。

s = input()

cnt = 0

for i in range(len(s) // 2):
    if s[i] != s[-(i + 1)]:
        cnt += 1
        
print(cnt)

文字列の中心までなのでrange(len(s) // 2)にしています。文字列を後ろから取り出す方法はスライスを使いましょう。s[-(i + 1)]とすることで文字列を後ろから取り出すことができます。

AtCoderB問題

Posted by cheese