gets q=gets.split.map{|c|[c=c.to_f,c,1]}.sort m=(1..5e5).map{ a,l,d=q.pop s=l/d+=1 q[(0...q.size).bsearch{|i|q[i][0]>s}||q.size,0]=[[s,l,d]] a } gets gets.split.map{|c|p m[c.to_i-1]}