Sha256: 9005621898ca9021422947c6d9b45e52f2bd34c99e0cbd1d179067b3157e133d

Contents?: true

Size: 356 Bytes

Versions: 125

Compression:

Stored size: 356 Bytes

Contents

from itertools import groupby
from re import sub


def decode(string):
    return sub(r'(\d+)(\D)', lambda m: m.group(2) * int(m.group(1)), string)


def encode(string):
    def single_helper(k, g):
        size = len(list(g))
        return k if size == 1 else str(size) + k
    return ''.join(single_helper(key, group) for key, group in groupby(string))

Version data entries

125 entries across 125 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.179 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.178 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.177 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.176 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.175 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.174 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.173 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.172 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.171 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.170 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.169 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.167 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.166 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.165 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.164 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.163 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.162 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.161 tracks/python/exercises/run-length-encoding/example.py
trackler-2.2.1.160 tracks/python/exercises/run-length-encoding/example.py