def sprav_strom(zaciatok, koniec) posledny_match = nil (zaciatok..koniec-1).each do |i| next unless $predkovia_o[i] == i-zaciatok if posledny_match $predkovia_m[posledny_match] = i-1-posledny_match sprav_strom(posledny_match+1, i) end posledny_match = i end if posledny_match $predkovia_m[posledny_match] = koniec-1-posledny_match sprav_strom(posledny_match+1, koniec) end end print "Zadaj N: "; $N = readline.to_i $mena = []; $predkovia_o = []; $predkovia_m = [] $N.times { print "> "; r = readline.split(" "); $mena << r[0]; $predkovia_o << r[1].to_i } sprav_strom(0, $N) $N.times { |i| puts($mena[i]+" "+$predkovia_m[i].to_s) }