#LX0027. 钓鱼2

钓鱼2

时间限制:1s1s,空间限制:512mb512mb

题目描述

小明喜欢去钓鱼。

有一天,小明发现了一个宝地:钓鱼一条街。

这条街上有编号为1,...,n1,...,nnn个鱼塘。

其中,第ii个鱼塘位于坐标ii。小明一开始在坐标00,他从坐标ii移动到坐标i+1i+1需要花费11个小时,从坐标i+1i+1移动到坐标ii也需要11个小时。

通过小明的观察,小明发现,第ii个鱼塘,第一次花费11小时钓鱼,可以钓到aia_i条鱼,第二次花费11小时钓鱼,可以钓到max(0,aibi)max(0,a_i-b_i)条鱼。第kk次花费11小时钓鱼,可以钓到max(0,ai(k1)×bi)max(0,a_i-(k-1)\times b_i)条鱼。

显然,小明在第ii个鱼塘,最多会花费aibi\lceil \frac{a_i}{b_i}\rceil小时来钓鱼,后续就不会钓鱼了,因为已经钓不到了。

小明一共有TT个小时的时间,他需要在TT小时内,从坐标00出发,最多走到鱼塘kk,然后在这个过程中完成钓鱼的事情,最后带着鱼从坐标00回家。请帮小明算一算,对于k=1,2,3,...,nk=1,2,3,...,n,小明最多可以钓到多少条鱼呢?

输入格式

第一行输入n,Tn,T,表示鱼塘的个数,以及小明的时间。

第二行输入nn个正整数,表示aia_i

第三行输入nn个正整数,表示bib_i

输出格式

输出nn个整数表示答案。

样例输入 #1

3 10
10 10 1
5 5 1

样例输出 #1

15 30 30

样例解释 #1

如果最多只能走到鱼塘11再返回,小明将有88个小时来钓鱼,但只能在鱼塘11钓鱼,第一次钓到1010条,第二次钓到55条,第三次以后都只能钓到00条,一共带着1515条鱼回家。

如果最多只能走到鱼塘22再返回,小明可以先走到鱼塘11,花费22小时,钓到1515条鱼,再走到鱼塘22,花费22小时,钓到1515条鱼,然后再花费22小时回到坐标00,一共花费88个小时,带着3030条鱼回家。

如果最多只能走到鱼塘33再返回,小明还是只会走到鱼塘22再带着3030条鱼返回,因为鱼塘1,21,2的鱼实在是太多了,浪费时间去鱼塘33钓鱼是来不及的。

样例输入 #2

3 11
10 10 1
5 5 1

样例输出 #2

15 30 31

样例解释 #2

对于1111小时来说,小明是可以去池塘33钓鱼的,往返加上钓完三个鱼塘的鱼,刚好花费1111小时。

数据范围

一共1010个测试点。

对于测试点1-2 :n20,ai=bin\leq 20,a_i=b_i

对于测试点3-4 :n100,T500n\leq 100,T\leq 500

对于测试点5-6 :n100,T10000n\leq 100,T\leq 10000

对于测试点7-8 :ai=bia_i=b_i

对于100%的数据:1n105,12nT1061\leq n\leq 10^5,1\leq 2n\leq T\leq 10^61ai,bi1091\leq a_i,b_i\leq 10^9,保证$\sum_{i=1}^{n}\lceil \frac{a_i}{b_i}\rceil \leq 10^6$