LINK:Little Pony and Expected Maximum

容易设出状态f[i][j]表示前i次最大值为j的概率。

转移很显然 不过复杂度很高。

考虑优化。考虑直接求出最大值为j的概率 对于1显然\((\frac{1}{m})^n\)

对于2 显然有\((\frac{2}{m})^n\)不过这其中有一部分是1的概率容斥掉即可。

对于更大的点数也是如此记一个前缀和sum就好了。

(不过这个前缀和是不必要的 刚好等于上一次求出的概率

需要小数快速幂 就没了。

const ll MAXN=300010,G=3;
ll n,m;
db f[MAXN],sum[MAXN],ans;//f[i]表示n次之中点数最大为i的概率.
inline db ksm(db b,ll p)
{
db cnt=1;
while(p)
{
if(p&1)cnt=cnt*b;
b=b*b;
p=p>>1;
}
return cnt;
}
signed main()
{
freopen("1.in","r",stdin);
get(m);get(n);
rep(1,m,i)
{
f[i]=ksm((db)i/m,n)-sum[i-1];
sum[i]=sum[i-1]+f[i];
ans=ans+f[i]*i;
}
printf("%.9lf",ans);
return 0;
}

最新文章

  1. TCP三次握手四次挥手
  2. win7中VS2010中安装CSS3.0问题解决方法
  3. Log4j2 - 配置
  4. 浏览器User-agent简史(user-agent)
  5. java写入文件之txt文本
  6. 基于VC的ACM音频编程接口压缩Wave音频(三)
  7. JavaWeb:JavaBean基础
  8. iOS static
  9. Ruby(rails)win环境下安装
  10. JSChart
  11. tablet 的使用
  12. UI3_UICollectionViewMuti
  13. 李洪强iOS开发之keychain的使用
  14. Android(java)学习笔记207:开源项目使用之gif view
  15. 提升PHP性能的21种方法
  16. Ubuntu 14.04 eclipse 提示框背景色更改
  17. 进程控制之vfork函数
  18. linux下shutdown无法关闭tomcat进程的解决方式
  19. C返回函数指针的函数
  20. 二维码生成api

热门文章

  1. MVC + EFCore 项目实战 - 数仓管理系统2- 搭建基本框架配置EFCore
  2. java NIO 实例之多人聊天
  3. 还能这么玩?用VsCode画类图、流程图、时序图、状态图...不要太爽!
  4. Centos 6.4最小化安装后的优化(2)
  5. python数据处理(六)之数据清洗:标准化和脚本化
  6. tensorflow.python.framework.errors_impl.InvalidArgumentError: You must feed a value for placeholder tensor 'x_1' with dtype float and shape [?,227,227,3]
  7. IOS10 window.navigator.geolocation.getCurrentPosition 无法定位问题
  8. Ethical Hacking - Web Penetration Testing(10)
  9. 使用Java带你打造一款简单的外卖系统
  10. Android Studio(Kotlin)之RecyclerView