SP7860 ADV04C - Deal or No Deal
题目描述
《交易还是不交易》是一档在全球范围内播出的节目。不同国家有自己特色的版本,但大体规则相似。
游戏的核心是开启一组编号的公文包,这些公文包里装着不同的奖品(可能是现金也可能是其他奖品)。游戏开始时,所有奖品的内容是已知的,但具体位置不知道。每个奖品的价值通过密封在包内的标签或卡片表示。参赛者在游戏开始时选择(或被分配)一个公文包,其价值在游戏结束前不会揭示。
参赛者接着选择要从游戏中消除的公文包,每当一个选择的公文包被打开时,其内金额会立即显现;显然,被揭示的金额不可能出现在参赛者选的公文包中。游戏过程中,银行家会在预定的公文包数量被打开后,根据剩下的奖品金额和参赛者的表现,向参赛者提供一笔钱或奖品,希望参赛者退出游戏。此时,参赛者需要回答这道标题性的问题,选择:
- "交易",接受银行家的提议并结束游戏,或
- "不交易",拒绝银行家的提议,继续游戏。
这样的过程会一直进行,直到参赛者选择接受一个提议“交易”,或所有提议都被拒绝并且剩余未选的公文包的价值揭示。参赛者最终赢得的是所接受的提议金额,如果没有接受任何提议,则是自己所选公文包的内容。
在这道问题中,为简化处理,我们假设每次移除公文包前,银行家都会提出交易提案。同时,我们设定一个参赛者行为模型:若银行家提供奖金 x,参与者接受交易的概率为:
$$ \frac{x - \min}{\max - \min} $$
其中,$\min$ 和 $\max$ 分别表示游戏中剩余奖品的最小值和最大值。银行家的目标是使参赛者赢得的期望奖金最小化。请你帮助银行家计算在最佳提案条件下,参赛者预期将赢得的奖金。
输入格式
第一行输入一个整数 $n$,表示公文包的总数量。接下来一行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$,表示每个公文包中的奖品金额。接着是一行整数 $q$,表示银行家需要评估的情境数量。在每种情境中,首先输入一个整数 $k$,表示当前游戏中剩余的奖品数量;接下来是 $k$ 个整数 $b_1, b_2, \ldots, b_k$,表示这些剩余奖品的金额。
输出格式
对于每个情境,输出两行,分别是参赛者期望赢得的奖金和银行家应提出的最佳提案金额,分别保留两位小数。
**本翻译由 AI 自动生成**