def encode(input)
input.gsub(/(.)\1*/) { |m| m.length.to_s << m[0] }
end
puts encode("AAABBBCCCDDD")
puts encode("AAABBBCCCAAA")
puts encode("AAABBBCCAAA")
puts encode("AAABBBCCAAAA")
puts encode("WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB")
ZGVmIGVuY29kZShpbnB1dCkKIGlucHV0LmdzdWIoLyguKVwxKi8pIHsgfG18IG0ubGVuZ3RoLnRvX3MgPDwgbVswXSB9IAplbmQKcHV0cyBlbmNvZGUoIkFBQUJCQkNDQ0RERCIpCnB1dHMgZW5jb2RlKCJBQUFCQkJDQ0NBQUEiKQpwdXRzIGVuY29kZSgiQUFBQkJCQ0NBQUEiKQpwdXRzIGVuY29kZSgiQUFBQkJCQ0NBQUFBIikKcHV0cyBlbmNvZGUoIldXV1dXV1dXV1dXV0JXV1dXV1dXV1dXV1dCQkJXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dCIik=