AtCoder Beginner Contest 126
翻译中…
Problem Statement
翻译中…
Snuke has a fair $N$-sided die that shows the integers from $1$ to $N$ with equal probability and a fair coin. He will play the following game with them:
翻译中…
- Throw the die. The current score is the result of the die.
- As long as the score is between
$1$and$K-1$(inclusive), keep flipping the coin. The score is doubled each time the coin lands heads up, and the score becomes$0$if the coin lands tails up. - The game ends when the score becomes
$0$or becomes$K$or above. Snuke wins if the score is$K$or above, and loses if the score is$0$.
翻译中…
You are given $N$ and $K$. Find the probability that Snuke wins the game.
翻译中…
Constraints
翻译中…
$1 ≤ N ≤ 10^5$$1 ≤ K ≤ 10^5$- All values in input are integers.
翻译中…
Input
翻译中…
Input is given from Standard Input in the following format:
翻译中…
N K
翻译中…
Output
翻译中…
Print the probability that Snuke wins the game. The output is considered correct when the absolute or relative error is at most $10^{-9}$.
翻译中…
样例
Input #1
3 10
Output #1
0.145833333333
- If the die shows $1$, Snuke needs to get four consecutive heads from four coin flips to obtain a score of $10$ or above. The probability of this happening is $\frac{1}{3} \times (\frac{1}{2})^4 = \frac{1}{48}$.
- If the die shows $2$, Snuke needs to get three consecutive heads from three coin flips to obtain a score of $10$ or above. The probability of this happening is $\frac{1}{3} \times (\frac{1}{2})^3 = \frac{1}{24}$.
- If the die shows $3$, Snuke needs to get two consecutive heads from two coin flips to obtain a score of $10$ or above. The probability of this happening is $\frac{1}{3} \times (\frac{1}{2})^2 = \frac{1}{12}$.
Thus, the probability that Snuke wins is $\frac{1}{48} + \frac{1}{24} + \frac{1}{12} = \frac{7}{48} \simeq 0.1458333333$.
Input #2
100000 5
Output #2
0.999973749998
题目信息
题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。