25 lines
596 B
Plaintext
25 lines
596 B
Plaintext
F encode(input_string)
|
||
V count = 1
|
||
V prev = Char("\0")
|
||
[(Char, Int)] lst
|
||
L(character) input_string
|
||
I character != prev
|
||
I prev != Char("\0")
|
||
lst.append((prev, count))
|
||
count = 1
|
||
prev = character
|
||
E
|
||
count++
|
||
lst.append((input_string.last, count))
|
||
R lst
|
||
|
||
F decode(lst)
|
||
V q = ‘’
|
||
L(character, count) lst
|
||
q ‘’= character * count
|
||
R q
|
||
|
||
V value = encode(‘aaaaahhhhhhmmmmmmmuiiiiiiiaaaaaa’)
|
||
print(‘Encoded value is ’value.map(v -> String(v[1])‘’v[0]))
|
||
print(‘Decoded value is ’decode(value))
|