YottaGin

Freedom is a responsible choice.

[Python] ABC019 B

2020/1/4 2020/1/4 プログラミング

問題

B – 高橋くんと文字列圧縮

回答

s = input()

s_compressed = ''
cnt = 1

for i, ch in enumerate(s):
    if i == 0:
        ch_pre = ch
        continue
    
    if ch == s[i-1]:
        cnt += 1
    else:
        s_compressed += ch_pre + str(cnt)
        ch_pre = ch
        cnt = 1
        
s_compressed += ch_pre + str(cnt)

print(s_compressed)

Atcoder, Python GinO

関連記事

[Python] ABC012 C

問題 C - 九九足し算 回答 N = int(input()) SUM_MULTIPLY = 2025 diff = SUM_MULTIPLY - N ans_lst = [] for num in range(1, 10): if diff %...

記事を読む

[Python] MS Access .mdbファイルにアクセスする

Windows上で、Pythonからマイクロソフトのアクセスファイルを扱うために、pyodbcを使います。 pyodbc pyodbcは、PythonからODBCを通してデータベースを操作するライブラリです。SQL構文でデータベースとやりとりができます。 Py...

記事を読む

[Python] 連結リストを逆順にする

Python で連結リストを逆順にします。 連結リストは以下の実装を使います。 単純に考えれば、空の連結リストを用意して値を先頭から挿入していくことで、逆順の連結リストを取得できます。 def reverse_linked_list(sel...

記事を読む

[Python] クラスメソッドと静的メソッド

今まで、Python でのクラスメソッド、静的メソッドを意識したことがなかったので、備忘録です。 Difference between staticmethod and classmethod 静的メソッドはクラスの外に定義されている関数と同じ。確たる理由がなければ...

記事を読む

[Python] 正の整数を逆順にする

Python で正の整数を逆順にします。 文字列として扱うのではなく整数として扱うので、str のような形では行えません。 10による剰余が最下位の桁になり、商が最下位の桁を取り除いた数になるので、ループで商が0になるまで繰り返すことで、最下位の桁から順に取り出すこ...

記事を読む


Public Domain YottaGin No Rights Reserved.