pythonでrun-length decode
Prologの練習問題サイトにrun-length encodingがあったのでやってみます。
PrologSite
問題はこれ。
1.12 (**) Decode a run-length encoded list.
Given a run-length code list generated as specified in problem 1.11. Construct its uncompressed version.
難易度がエンコードのより高いらしいんですが、とっても簡単な気がします。。。
コードはこちら。
l = ((4, 'a'), (1, 'b'), (2, 'c'), (2, 'a'), (1, 'd'), (4, 'e')) def decode(data): return ''.join([it[1] * it[0] for it in data]) print(decode(l))
今回もとってもシンプルにできました。