n,k=gets.split.map &:to_i a=[] n.times do |i| a<< [i]+gets.split.map(&:to_i) end a.sort!{|a,b|b[1]<=>a[1]} d=Array.new(n,0) g=[] fase=0 base=0 loop do if fase==0 g=[a.shift] base=g[0][1] fase=1 elsif fase==1 if a[0][1]!=base fase=2 else g+=[a.shift] end elsif fase==2 g.length.times do |i| g[i][4]=d[g[i][3]] end g.sort!{|a,b|a[2]<=>b[2]} g.sort!{|a,b|a[4]<=>b[4]} g.each do |e| p e[0] d[e[3]]+=1 k-=1 if k==0 fase=3 break else fase=0 end end end break if k==0 end