ll@N,@M,@A[N],t,j;double@B[M];set>C;rep(i,N)C.insert({-A[i]/B[0],i,0});rep(M){const auto&c=*C.begin();wt(1+(t=get<1>(c)));j=get<2>(c)+1;C.erase(c);C.insert({-A[t]/B[j],t,j});}