fork download
  1. def f9009v2(n)
  2. n.to_s.gsub(/(\d)\1*/) { $&.size < 3 ? $&.size.to_s + $1 : $1}.to_i
  3. end
  4. p (0..10).inject([0]) {|acc| acc << f9009v2(acc.last)}
  5.  
Success #stdin #stdout 0.02s 9664KB
stdin
Standard input is empty
stdout
[0, 10, 1110, 110, 2110, 122110, 11222110, 2122110, 1211222110, 11122122110, 12211222110, 11222122110]