Random
Problem description
BNUOJ 1082是一道RP题. 它需要你输出一个整数,BNUOJ的SPJ会随机生成一个(1le nle 50).如果你输出的数等于(n),你就AC了.
现在SXBKOJ出了一道推广的题目:题目给定参数(x),SPJ会随机生成一个(1le nle x),如果你输出的数等于(n),你就AC了.
你知道这个(x),你希望求出你从0提交到AC的期望提交次数.
Input description
一个整数x
Output description
一个浮点数(p),假设标准答案为(u),如果(frac{|p-u|}{u}le 10^{-10}),即认为输出正确
Hint
(xle 10^{18})
Solution
其实是一道傻逼题...
因为每一次对的概率都是(frac{1}{x}),那么
[p=frac{1}{x}cdot sum_{ige 1}ileft(frac{x-1}{x}
ight)^{(i-1)}
]
得出
[xp=sum_{ige 1}ileft(frac{x-1}{x}
ight)^{(i-1)}
]
记(l=frac{x-1}{x})
得
[xp=sum_{ige 1}icdot l^{(i-1)}=1+2l+3l^2+4l^3+dots
]
两倍同时乘上(l)
[lxp=sum_{ige 1}icdot l^i=l+2l^2+dots
]
相减可得
[xp-lxp=sum_{ige 0}l^i=1+l+l^2+l^3+dots
]
显然是
[p=frac{1}{1-l}=x
]
卧槽....= =|||
注1
[xp-lxp=(x-lx)p=left(x-frac{x-1}{x}cdot x
ight)p=(x-(x-1))p=p
]
注2
设(A=sum_{ige 0}u^i),有
[uA=sum_{ige 0}u^{i+1}
]
显然
[A-uA=1
]
那么
[A=frac{1}{1-u}
]
注3:调和级数
调和级数
[A=sum_{xge 1}frac{1}{x}
]
证明(A)发散.
由于
[int frac{1}{x}dx=ln{x}
]
那么看起来(A)确实是发散的.
然后我们要证明它.设(B=A-1).
[B=sum_{xge 2}frac{1}{x}=sum_{xge 2}frac{x-1}{x(x-1)}=sum_{xge 2}sum_{yge x}frac{1}{x(x-1)}
]
我们对
[sum_{yge x}frac{1}{x(x-1)}
]
部分求和
[sum_{yge x}frac{1}{x(x-1)}=sum_{yge x}frac{1}{x-1}-frac{1}{x}=frac{1}{x-1}
]
于是
[B=sum_{xge 2}frac{1}{x-1}=1+B
]
显然此时(B)是发散的,那么(A)也是发散的.