CF1578M The Mind
题目描述
这是一个交互式问题。
在本题中,你需要为一个合作游戏设计策略。该游戏由两名玩家参与,每位玩家各自获得 5 张牌。每张牌上都有一个 1 到 100 之间的随机整数,保证所有牌上的数字互不相同。
游戏的目标是在所有 10 张发到玩家手中的牌中,最先打出数字最小的那张牌。问题在于,每位玩家只能看到自己的牌,且无法与另一位玩家进行任何形式的交流。
游戏共进行 5 个回合。在每个回合,玩家同时进行操作。每位玩家可以选择打出自己手中最小的那张牌,或者什么都不做。如果在某一回合,最小的那张牌被打出,且在此之前没有其他牌被打出,则玩家获胜。如果有两个玩家在同一回合打出牌,或者 5 个回合后仍无人打出牌,则玩家失败。
由于玩家无法交流,因此每位玩家的策略只能基于自己手中的 5 张牌。你可以用五个数 $0.0 \le p_i \le 1.0, \sum_{i=1}^{5}p_i \le 1$ 来描述一套策略,其中 $p_i$ 表示玩家在第 $i$ 回合打出自己手中最小牌的概率。如果你知道玩家手中的牌以及他们选择的策略,就可以用简单的公式计算出获胜概率。
你将获得 $n=1000$ 组随机生成的 5 张牌。你需要为每组牌生成一套策略,以最大化获胜概率。当评测程序收到所有 $n$ 组策略后,会生成所有可能的有效手牌对(有重复数字的手牌对会被舍弃),并根据你为两组手牌提供的策略计算获胜概率。
为了保证不同手牌的答案互不影响,你必须在输出一组手牌的策略后刷新标准输出,然后再读取下一组手牌的信息。
如果所有有效手牌对的平均获胜概率超过 85%,则本题通过。该题包含一个样例测试和 $20$ 个随机生成的测试,每个测试 $n=1000$。
输入格式
第一行包含一个整数 $n$,表示手牌组数。除第一个样例外,所有测试均有 $n=1000$。
接下来的 $n$ 行,每行包含 5 个数 $a_i$($1 \le a_i \le 100, a_i < a_{i+1}$),表示一组手牌。保证每种可能的 5 张牌组合被选中的概率相等。
输出格式
对于每组手牌,你需要输出 5 个数 $0.0 \le p_i \le 1.0, \sum_{i=1}^{5}p_i \le 1$,其中 $p_i$ 表示在第 $i$ 回合打出自己手中最小牌的概率。
说明/提示
在样例测试中,只有一组有效的手牌对。样例输出的获胜概率为 $0.8 + 0.2 \cdot (1 - 0.2) = 0.96$。另外注意,第二位玩家有 $0.1$ 的概率不会出牌。
由 ChatGPT 4.1 翻译