def compress_string(str)
  result = []
  prev   = str[0]
  count  = 0

  str.each_char do |char|
    if char == prev
      count += 1
    else
      result << char + count.to_s
      prev  = char
      count = 0
    end
  end

  result << char + count.to_s
  result = result.join('')
  if result.length < str.length
    result
  else
    str
  end
end
