#38. lxy 的学习计划

lxy 的学习计划

限制

  • 1000ms
  • 32MB

题目描述

已知 lxy 选了 N(1N500)N(1 \leq N \leq 500) 门课,每门课有学分 wiw_i ,劳累度 viv_i 和挂科概率 pip_i

其中,wiw_i[1,5][1,5] 范围内的一个正整数,viv_i 是 int 范围内正整数, pip_i[0,1][0,1]范围内小数;

现在 lxy 想退掉某些课使得自己的劳累度尽量小,但是,如果 lxy 的学分总数达不到给定的 MINXMINX,他会被退学。

lxy 想知道,在期望学分大于等于 MINXMINX 的情况下,他的最小劳累度是多少。

一门课的期望学分即为:通过概率 * 这门课的学分

注意:如果一门课挂科,lxy 将付出 viv_i 的劳累度但是无法获得相应学分;否则,lxy 将付出 viv_i 的劳累度并收获 wiw_i 的学分。

输入格式

第一行一个正整数 NN 表示课程数量

接下来 NN 行,每行空格分开的 33 个数 wi,viw_i,v_ipip_i ,含义如题面所述

最后一行一个正整数 MINXMINX 表示所需最小学分。

输出格式

一行一个正整数表示最小劳累度。

数据范围

本题共 1010 个测试点,每个测试点 1010 分。

对于 10%10\% 的数据,1N101 \leq N \leq 10

对于 30%30\% 的数据,1N201 \leq N \leq 20

对于另外 20%20\% 的数据,pi=0p_i=0

对于 100%100\% 的数据,

1N5001 \leq N \leq 500

wiw_i 是正整数且 1wi51 \leq wi \leq 5

pip_i 最多包含 22 位小数且 0pi10 \leq pi \leq 1

viv_i 是 int 范围内正整数.

保证全选的情况下 lxy 不会被退学。

样例输入

2
1 233 0
2 1 0.5
1

样例输出

1