ABC172 B問題 Minor Changeを解く
今日はエイプリルフールですけど、いつも通りの記事です。
ABC172 B問題 Minor Changeを解いて、他の方の短い解答を見て、勉強になりました。
2つの同じ長さの文字列が与えられて、SをTに変換するには何回文字の置き換えが必要か求める問題です。
SとTを頭から順に比べて、異なったら置き換えが必要なので、カウントアップします。
コードはこんな感じです。
S = input() T = input() count = 0 for s, t in zip(S, T): if s != t: count += 1 print(count)
今回はpythonのzipを使いましたが、
普通に変数iを0から文字の長さの分だけループさせても良いです。
他の方の答えで面白かったのが、答えを変数に格納しないパターンです。
私はcountという変数に答えを格納していますが、その必要はなくsumを使って以下のように書けます。
print(sum(s != t for s, t in zip(S, T)))
実際に他の人に読んでもらうことを考えてこういう風に書くかどうかはともかく、
今まで気づけなかった書き方で芸の引き出しが増えた気がします。
最近忙しくて、眠くてあまり自分の勉強になる問題を解けてないです。。。