luogu#P11440. [Code+#6] 幸运盒

[Code+#6] 幸运盒

题目背景

搬运自 Code+ 第 6 次网络赛

题目描述

小明有 nn 个幸运盒,每次运转一个盒子的结果要么出现糖果,要么出现芥末。每一轮,小明可以每次选择恰好 kk 个盒子一起运转,每个盒子有 p%p \% 的概率开出糖果,(100p)%\left (100-p \right) \% 的概率开出芥末;或者他可以选择这一轮使用法术:选择恰好 tt 个盒子,对这些盒子的开出糖果的概率进行调整,使这些盒子分别有 $p %,\left( \min \left( p+1, 100 \right) \right) \%,\cdots,\left( \min \left( p+t-1 , 100 \right) \right) \%$ 的概率获得糖果;当然,他也可以什么都不做,放弃这一轮。

小明很聪明,每一轮都会选择最优的策略运转这些盒子,包括选择 kk 个盒子重新运转,或者选择 tt 个盒子使用法术,亦或是放弃这一轮的运转。他可以进行 mm 轮操作,在所有操作结束之前他不能拿走盒子里的东西。他想知道 mm 轮操作之后,他期望获得多少的糖果。

输入格式

第一行一个整数 TT,表示数据组数。

对每组数据,输入一行五个整数:nnmmttkkpp,分别表示盒子的数量 nn、运转轮数 mm、使用法术需要选择的盒子数量 tt、不使用法术需要选择的盒子数量 kk,以及 pp 表示初始概率 p%p \%

输出格式

每组测试数据输出一行,一个 55 位小数,表示最佳策略下的期望。数据保证解的第 66 位小数不是 4,5,64,5,6,即不用担心舍入精度问题。

2
500 500 19 300 50
39 42 4 27 86
497.89734
39.00000

提示

本题仅有 11 个测试点,只有当你的输出与标准输出完全相同时,才能得到该测试点的满分。

下面为各组数据的范围和约定。

对于测试点中 90%90 \% 的数据,1n501 \le n \le 501m501 \le m \le 501t101 \le t \le 10

对于测试点中所有的数据,1T1001\le T\le1001n,m5001\le n,m\le5001t201\le t\le 20tknt\le k\le n1p1001\le p\le 100