P12519 「MSTOI-R1」热开水
题目背景
小 M 最近在玩一款新游戏,$rks$ 是这款游戏中评判玩家实力的数值。$rks$ 分为单曲 $rks$ 和总 $rks$,它们都是两位小数。
游玩一首曲子后,会获得一个评分 $acc$(即准度),以百分比的形式表现。
题目描述
每首曲子都有一个难度定数。当一个曲的 $acc\ge 70\%$ 时,这个曲才会计算 $rks$,否则该曲 $rks$ 为 $0$。单曲 $rks=[\frac{(100\times acc-55)}{45}]^2\times$ 难度定数 。
如果一个曲你游玩了多次,那么这个曲的单曲 $rks$ 会保留最高的一次。总 $rks=$ 最大的 $4$ 个单曲 $rks$ 和 $acc$ 为 $100\%$ 的曲里面最大的单曲 $rks$(如果没有 $acc$ 为 $100\%$ 的曲子则将这一项的值视为 $0$)这 $5$ 个单曲 $rks$ 的平均值。
为了方便表示和计算,单曲 $rks$ 和总 $rks$ 都应保留 $2$ 位小数(非四舍五入)。
小 M 有 $n$ 首曲子可以玩,对于第 $i$ 首曲子,难度定数为 $c_i$,小 M 第 $1$ 天玩的 $acc$ 可以达到 $a_i\%$,第 $k$ 天可以达到 $min(100\%,a_i\%+(k-1)\times b_i\%)$。小 M 每天都会游玩这 $n$ 首曲子,请问小 M 最早在第几天总 $rks$ 可以 $\ge m$。
输入格式
无
输出格式
无
说明/提示
数据保证**输入的小数都是两位小数**。注意**计算过程中的所有小数您都应该保留两位小数(非四舍五入)**(例如包括计算单曲 $rks$ 时 $\div 45$ 之后,也要保留 $2$ 位小数再继续计算),否则可能会与答案存在偏差。
建议您使用下面这段代码进行保留两位小数:
```cpp
double retain2(double x)
{
int y;
double z;
x*=100;
y=x;
z=y/100.0;
return z;
}
```
对于 $100\%$ 的数据,$1\le n\le10^5$,$0\le m\le17$,$0\le a_i\le100$,$0.01\le b_i\le100$,$1\le c_i\le17$,$0\le d_i\le17$。
测试点|特殊性质
---|---
$1\sim3$|$n\le100$
$4$|$m=0$
$5$|$d_i=0$
$6\sim10$|$n\le10^3$
$11\sim15$|$n\le10^4$
$16\sim20$|无