LG#P4377. [USACO18OPEN] Talent Show G

提交1 通过1
通过率100%
时间限制2000ms
内存限制512MiB

题目描述

题目描述

Farmer John 要带着他的 nn 头奶牛,方便起见编号为 1n1\ldots n,到农业展览会上去,参加每年的达牛秀!他的第 ii 头奶牛重量为 wiw_i,才艺水平为 tit_i,两者都是整数。

在到达时,Farmer John 就被今年达牛秀的新规则吓到了:

(一)参加比赛的一组奶牛必须总重量至少为 WW(这是为了确保是强大的队伍在比赛,而不仅是强大的某头奶牛),并且。

(二)总才艺值与总重量的比值最大的一组获得胜利。

FJ 注意到他的所有奶牛的总重量不小于 WW,所以他能够派出符合规则(一)的队伍。帮助他确定这样的队伍中能够达到的最佳的才艺与重量的比值。

输入格式

第一行是两个整数,分别表示牛的个数 nn 和总重量限制 WW

22(n+1)(n+1) 行,每行两个整数,第 (i+1)(i + 1) 行的整数表示第 ii 头奶牛的重量 wiw_i 和才艺水平 tit_i

输出格式

请求出 Farmer 用一组总重量最少为 WW 的奶牛最大可能达到的总才艺值与总重量的比值。

如果你的答案是 AA,输出 1000A1000A 向下取整的值,以使得输出是整数(当问题中的数不是一个整数的时候,向下取整操作在向下舍入到整数的时候去除所有小数部分)。

请注意当问题的答案恰好是整数 xx 时,你的程序可能会由于浮点数精度误差问题最后得到一个 xϵx-\epsilon 的答案,向下取整后变为 x1x-1 导致答案错误。这种情况下你可以在输出答案前给答案加上一个极小的值 xx+10kx\gets x+10^{-k} 来避免该问题。

输入样例 #1

3 15
20 21
10 11
30 31

输出样例 #1

1066

输入样例 #2

6 54
30 31
8 9
24 81
20 75
20 83
6 15

输出样例 #2

3734

输入样例 #3

7 29
4 100
14 80
21 70
7 10
2 28
8 34
2 26

输出样例 #3

8933

数据范围与约定

数据规模与约定

对于全部的测试点,保证 1n2501 \leq n \leq 2501W10001 \leq W \leq 10001wi1061 \leq w_i \leq 10^61ti1031 \leq t_i \leq 10^3