k242hd's memo

RubyとAndroidと時々TopCoder

SRM605 Div2 250 をPythonで解いてみた

問題文はこちらから。

ざっくりと説明すると、

  • 文字列が与えられます
  • その文字列から任意の一文字消すと何通りの文字列ができるでしょうか

こんな感じ。


自分の解答は以下のとおり

class AlienAndPassword:
    def getNumber(self, S):
        count = 0
        previous = '';
        for char in S:
            count += 1 if char != previous else 0
            previous = char
        return count

文字列を一文字ずつ走査して、前の文字と異なっていたら1足していくだけ。

今回は簡単でしたね。
次回のSRMは本番に出れると思います。