A21643.三国围棋擂台赛
提高+/省选-
通过率:0%
时间限制:1.00s
内存限制:512MB
题目描述
一年一度的“农心杯”三国围棋擂台赛是世界上最高水平的围棋比赛,也是中日韩三国围棋界最激动人心的较量。本题就是建立在这一比赛的规则之上。
三国围棋擂台赛是三个国家的代表队之间的比赛,下面简要介绍一下比赛的规则:
1.不妨设三个国家分别为A、B和C,每个国家各有n名选手(在上述的实际比赛中n=5),分别称其为A1,A2,…,An,B1,B2,…,Bn,C1,C2,…,Cn。
2.每场比赛都能分出胜负。每场比赛的负者遭到淘汰。
3.每队第一位出场的选手都已经确定为每队的第n位选手,即An、Bn和 Cn。
4.通过抽签等概率地选出一支队伍。该队将在第一轮中轮空,而剩下的两支队伍的第n位选手将进行第一场比赛。
5.第一场比赛的胜者(这里的胜者是指赢得该局比赛的选手,下同)与轮空队伍的第n位选手进行第二场比赛。比如在第一场比赛中Cn战胜了An,则第二场则由Cn对阵Bn。
6.从第三场比赛开始,前一场比赛未参加的队伍将选出一个未被淘汰的选手与上一场比赛的胜者进行下一场比赛。
7.这个过程将一直进行,直到某个队伍的全部参赛选手都被淘汰为止。
8.当只有两支队伍的时候,每场比赛后,由负方选择一位未被淘汰的选手与胜者进行下一场比赛。
9.当两支队伍中的任意一队的全部选手均被淘汰后比赛结束,余下的那支队伍将获得农心杯。
新一届的比赛就要开始了。你作为A队的领队,在比赛开始前已经统计了这3n位选手之间的胜率——即对于来自不同队伍的两个选手Q和R,我们已知Q战胜R的概率为p(0≤p≤1),且R战胜Q的概率为1−p。
由于你所在的国家实力超群,可以认为剩下的两只队伍都将矛头对准了你。B、C队的每个决策,即派出选手的顺序的目的都是使你所在的国家(A队)夺冠的概率尽可能小,而A队的决策的目的必然是使最后夺冠的概率尽可能大。你要做的事情就是计算出在这种极为不利的情况下,在三方都做出最优决策的前提下,A队夺冠的期望EA。
关于期望的计算:设现在在场上比赛的人是Q和R,Q胜R的概率为p,则此时A队胜率的期望
EA=p × E1+(1−p) × E2
其中E1为Q胜R后A队夺冠的期望,E2为R胜Q后A队夺冠的期望。E1、E2则同样使用上式递归计算。
A队的决策会尽可能使这个期望尽可能大,而B、C队则会使这个期望尽可能小。当B、C队的全部选手都被淘汰后夺冠期望为1,A队所有队员被淘汰后期望为0。
例如当每队有3位参赛选手时,相互之间的胜率由如下的3个3∗3的矩阵给出,其中矩阵中的每个数值p为所在行选手对于所在列选手的胜率,所在列选手对于所在行选手的胜率为1−p。
三支队的第三位选手的水平相同,在第两局比赛后,三支队的选手获胜的概率是相同的。假设第二局获胜的是B3,第三局轮到A队出场。这时我们可以派出A1和A2两种选择。
如果派出A2,虽然第三局一定可以战胜B3(胜率为100%),但是C队会在第四场比赛中派出C2,A2对于C2必败(胜率为0),第五场中B队会让B1出场,第六场A1只能出场,这时对A1必胜的B2还未登场,因此A1迟早会遭到淘汰,A队夺冠的概率就为0。
如果派出A1,虽然本局对于B3比赛只有50%的胜率,但是夺冠的概率为6.25%;因此在第三场应该派出A1。
根据第三场比赛的参赛选手的六种情况,最后夺冠的期望为:
6(6.25%+3.125%+18.75%+25%+60.9375%+50%)=27.34375%
输入格式
输入文件为go.in。
第一行包括一个整数n,表示每队的选手数。
第二行到第n+1行每行包含n个实数,整体为一个n∗n的矩阵,表示A队对B队的胜率。其中第i+1行的第j个数表示选手Ai对选手Bj时的胜率。
第n+2行为空行。
第n+3行到第2n+2行每行包含n个实数,同样为一个n∗n的矩阵,表示A队对C队的胜率。其中第i+n+2行的第j个数表示选手Ai对选手Cj时的胜率。
第2n+3行为空行。
第2n+4行到第3n+3行每行包含n个实数,整体为一个n∗n的矩阵,表示B队对C队的胜率。其中第i+2n+3行的第j个数表示选手Bi对选手Cj时的胜率。
输出格式
输出文件go.out仅包含一个实数,保留6位小数,表示A队获得冠军的概率。
输入输出样例
输入#1
3 1.0 0.0 0.5 0.5 1.0 1.0 0.5 0.5 0.5 0.5 0.5 1.0 0.5 0.0 0.5 0.5 0.5 0.5 0.5 0.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5
输出#1
0.273438
说明/提示
30%的数据中,n≤4。
40%的数据中,n≤5。
100%的数据中,n≤7。
对于10%的数据有三个胜率矩阵中,每个矩阵的元素都相同,但不同矩阵的数字可能不同。