题目链接
A阶乘位数
蒜头君对阶乘产生了兴趣,他列出了前 101010 个正整数的阶乘以及对应位数的表:
nnn | n!n!n! | 位数 |
---|---|---|
1 | 1 | 1 |
2 | 2 | 1 |
3 | 6 | 1 |
4 | 24 | 2 |
5 | 120 | 3 |
6 | 720 | 3 |
7 | 5040 | 4 |
8 | 40320 | 5 |
9 | 362880 | 6 |
10 | 3628800 | 7 |
对于蒜头君来说,再往后就很难计算了。他试图寻找阶乘位数的规律,但是失败了。现在请你帮他计算出第一个正整数的阶乘位数大于等于 100001000010000 的数是多少,即求最小的正整数 nnn 满足 n!n!n! 的位数大于等于 100001000010000。
思路:斯特灵公式,可以用来求阶乘位数,或者写一个循环。
题目链接
蒜头君在玩一个战争模拟游戏,他有高度为 1,2,3,…,n1,2,3,\ldots ,n1,2,3,…,n 的炮台各一个,他需要把这 nnn 个炮台从左往右排成一行,并且炮口都朝向右边。
在这个游戏中,所有炮台发射的炮弹会摧毁前方所有高度比自己低的炮台。每当蒜头君把 nnn 个炮台排成一行后,可能会有一些炮台被摧毁。举个例子:当前有 555 个炮台,从左到右高度分别为 2,1,3,5,42,1,3,5,42,1,3,5,4,往右发射炮弹后,高度为 444 的炮台被高度为 555 的摧毁,高度为 111 的炮台被高度为 222 的炮台摧毁,最后只会剩下 2,3,52,3,52,3,5 这三个炮台。
现在蒜头君想知道,如果随机地摆放这 nnn 个炮台,最后剩下炮台个数的期望是多少?比如 n=2n=2n=2 时,有两种摆放方式,高度序列分别为 1,21,21,2 和 2,12,12,1,前者最后剩下 222 个炮台,后者最后剩下一个炮台,因此期望为 (2+1)2=1.5000{(2+1)\over 2}=1.50002(2+1)=1.5000。
请你求出 n=2019n=2019n=2019 时剩下炮台个数的期望,保留四位小数。
样例输入复制
无
样例输出复制
无
题目来源
思路:写模拟写出n=2,3,4的情况,然后惊人的发现是1/1+1/2+1/3+...+1/n。后来看了大佬分析的我也没看懂,所以说遇事不决先打表,手动打表也行。haha