[LnOI2019] 加特林轮盘赌
题目背景
加特林轮盘赌是一个养生游戏。
题目描述
与俄罗斯轮盘赌等手枪的赌博不同的是,加特林轮盘赌的赌具是加特林。
加特林轮盘赌的规则很简单:在加特林的部分弹夹中填充子弹。游戏的参加者**坐在一个圆桌上**,轮流把加特林对着自己的头,扣动扳机一秒钟。中枪的自动退出,坚持到最后的就是胜利者。
我们使用的是 2019 年最新技术的加特林,他的特点是**无需预热、子弹无限**,每一个人,在每一回合,中枪的概率是完全相同的 $P_0$。
每局游戏共有 $n$ 只长脖子鹿,从 1 长脖子鹿开始,按照编号顺序从小到大进行游戏,绕着圆桌不断循环。
游戏可能会循环进行多轮,直到场上仅剩下最后一只长脖子鹿时,游戏结束。
给出 $P_0$ 和 $n$,询问 $k$ 号长脖子鹿最终成为**唯一幸存者**的概率 $P_k$。
**如果 $P_0=0$,我们认为胜者为 $1$ 号。**
输入输出格式
输入格式
仅一行三个数,$P_0,n,k$。
输出格式
一个浮点数 $P_{k}$,误差应该小于 $10^{-8}$。(请保留更多位数的小数)
输入输出样例
输入样例 #1
0.5 2 1
输出样例 #1
0.33333333
输入样例 #2
0.5 2 2
输出样例 #2
0.66666667
输入样例 #3
0.5 3 1
输出样例 #3
0.23809524
输入样例 #4
0.5 3 2
输出样例 #4
0.28571429
说明
- 对于 $10\%$ 的数据,$n \le 100$。
- 对于 $30\%$ 的数据,$n \le 500$。
- 对于另外 $20\%$ 的数据,$k = n$。
- 对于 $100\%$ 的数据,$1 \le k \le n \le 10^{4}, 0 \le P_0 \le 1$。
所有数据的时间限制为 1000ms,空间限制为256MB,可开启 O2 优化。