2157 - 【提高】买木头

通过次数

9

提交次数

13

时间限制 : 1 秒
内存限制 : 128 MB

有n个木材供应商,每个供货商有长度相同一定数量的木头。长木头可以锯短,但短木头不能接长。有一个客人要求m根长度相同的木头。要求计算出,此时供货商提供的木头满足客人要求的最长的长度是多少。

例如n=2,m=30,两个供货商的木头为

12,10 第1个供货商的木头长度为12,共有10根;

5,10 第2个供货商的木头长度为5,共有10根。

计算的结果为5,即长度为12的木头一根可锯出两根长度为5的木头,多余的无用,长度为5的木头不动,此时可得到30根长度为5的木头。

输入

整数n,m,L1,S1(1≤n≤10000,1≤m≤1000000,1≤L1≤10000,1≤S1≤100)

其中L1是第一个供货商木头的长,S1是第一个供货商木头数量。其他供货商木头的长度和数量Li和Si(i≥2),由下面的公式给出:

Li=((L_{(i-1)}×37011+10193) mod 10000)+1

Si=((S_{(i-1)}×73011+24793) mod 100)+1

输出

一个整数,即满足要求的m根长度相同的木头的最大长度。

样例

输入

10 10000 8 20

输出

201

来源

数组问题 二分答案