9 lines
272 B
Text
9 lines
272 B
Text
def run_length_encode:
|
|
explode | runs | reduce .[] as $x (""; . + "\($x[1])\([$x[0]]|implode)");
|
|
|
|
def run_length_decode:
|
|
reduce (scan( "[0-9]+[A-Z]" )) as $pair
|
|
( "";
|
|
($pair[0:-1] | tonumber) as $n
|
|
| $pair[-1:] as $letter
|
|
| . + ($n * $letter)) ;
|