2013-04-10 23:57:08 -07:00
|
|
|
def encode(string)
|
2015-11-18 06:14:39 +00:00
|
|
|
string.scan(/(.)(\1*)/).collect do |char, repeat|
|
|
|
|
|
[1 + repeat.length, char]
|
|
|
|
|
end.join
|
2013-04-10 23:57:08 -07:00
|
|
|
end
|
|
|
|
|
|
2013-10-27 22:24:23 +00:00
|
|
|
def decode(string)
|
2015-11-18 06:14:39 +00:00
|
|
|
string.scan(/(\d+)(\D)/).collect {|length, char| char * length.to_i}.join
|
2013-04-10 23:57:08 -07:00
|
|
|
end
|