题面
题目描述
现在有
n
n
n 种图案以及
2
n
2n
2n 张卡牌,每张卡牌上有一种图案,每种图案对应两张卡牌
一开始卡牌都是面朝下放在桌子上的,玩家每次可以翻开其中两张卡牌:
如果这两张卡牌的图案相同,则这两张牌都会被移除
否则这两张牌必须留在原处,并保持图案向下摆放
现在某位玩家的策略是这样的:
如果知道某些卡牌的图案相同,则优先翻开这些卡牌
否则随机翻开两张尚未被翻过的卡牌
问在这样的策略下,移除所有卡牌所需要的翻牌次数的期望为多少
输入格式:n
输出格式:输出一个实数,翻牌次数的期望,绝对误差或相对误差不超过 1 0 − 4 10^{-4} 10−4的结果视为正确。
输入输出样例
输入样例#1:
4
输出样例#1:
7.428571
输入样例#2:
1
输出样例#2:
1
有大佬写dp(然而想不出
据大佬说对于每次翻出来的两张牌是否在之前翻出来过的四种状态考虑
(具体过程请咨询神仙@nboierzyc)
最方便的方法就是推结论
发现
n
=
4
n=4
n=4时
a
n
s
=
7.428571
=
52
7
ans=7.428571=\frac{52}{7}
ans=7.428571=752
然后
n
=
2
n=2
n=2时
a
n
s
=
10
3
ans=\frac{10}{3}
ans=310
n
=
1
n=1
n=1时显然是
1
1
1
得出规律
a
n
s
=
2
n
−
n
2
n
+
1
ans=2n-\frac{n}{2n+1}
ans=2n−2n+1n(别说这种规律找不出来
赛后发现证明其实非常简单:
我们假设每次取剩下的里面最前面的两张牌(可以证明是等价的)
那么我们假设每次这两张牌都不一样
按照他的策略最终答案一定是
2
n
2n
2n因为一张牌被翻需要一次,被拿走也需要一次
那么现在只需要考虑每相邻两个数相等的期望对数是多少
对于任意一个位置,都有一个与它相邻的位置,这两个位置上的数相等的可能性为
1
2
n
−
1
\frac{1}{2n-1}
2n−11
然后对于每两个块都有
1
2
n
−
1
\frac{1}{2n-1}
2n−11的可能性,所以期望答案就是
n
2
n
−
1
\frac{n}{2n-1}
2n−1n
代码就不放了
(吐槽一下T1写pas的选手…