Извлечение диапазона: преобразовать отдельный список целых чисел в формат диапазона

# Range extraction: convert a comma separated list of integers into range format
def solution(list)
  list.chunk_while {|i, j| i+1 == j }.map do |a|
    if a.size > 2
      a.first.to_s + "-" + a.last.to_s
    else
      a  
    end
  end.join(',')
end
Mackerel