题目描述

一个人从 $1$ 开始向 $n$ 跳,在 $i$ 时会等概率跳到 $i,i+1,...,n$ 之一。求从 $1$ 跳到 $n$ 的期望步数。

$n\le 10^7$ 。


题解

期望dp傻逼题

设 $f[i]$ 表示从 $i$ 跳到 $n$ 的期望步数,那么有 $f[i]=\frac{\sum\limits_{j=i}^n f[j]}{n-i+1}+1=\frac{\sum\limits_{j=i+1}^nf[j]}{n-i}+1$ ,维护后缀和转移即可。

时间复杂度 $O(n)$

由于卡内存,因此逆元必须用int存储, $f$ 和 $s$ 需要使用滚动数组。

#include <cstdio>
#define N 10000010
#define mod 1000000007
int inv[N];
int main()
{int n , i;long long f , s = 0;scanf("%d" , &n);inv[1] = 1;for(i = 2 ; i <= n ; i ++ ) inv[i] = 1ll * (mod - mod / i) * inv[mod % i] % mod;for(i = n - 1 ; i ; i -- ) f = ((s + 1) * inv[n - i] + 1) % mod , s = (s + f) % mod;printf("%lld\n" , f);return 0;
}

转载于:https://www.cnblogs.com/GXZlegend/p/8625991.html

【loj6342】跳一跳 期望dp相关推荐

  1. 【BZOJ4008】【HNOI2015】亚瑟王 [期望DP]

    亚瑟王 Time Limit: 20 Sec  Memory Limit: 512 MB [Submit][Status][Discuss] Description 小 K 不慎被 LL 邪教洗脑了, ...

  2. 微信跳一跳辅助之JAVA版(最容易理解的算法)实现原理分析

    上几周更新微信后,进入欢迎界面就提示出让玩一把微信小游戏<跳一跳>.一向不爱玩游戏的我(除了经典QQ飞车.CS外),当时抱着没兴趣的态度简单看了下,没有玩.与朋友玩耍时,常听他们聊起这个小 ...

  3. 从“旅行青蛙”到“跳一跳”,看产品的场景设计和心智阶梯

    作者:付如涛 全文共 4423 字 7 图,阅读需要 11 分钟 ---- / BEGIN / ---- 本篇不重点研究"旅行青蛙"和"跳一跳"的成功模式,老付 ...

  4. 掷骰子题解(期望DP)

    题目描述 一行有 N N N个格子,编号为 1 , 2 , - , N 1,2,\dots,N 1,2,-,N,你站在格子 1 1 1处.前 N − 1 N-1 N−1个格子中,每个格子中都有一枚特殊 ...

  5. 微信跳一跳高分辅助踩坑

    旧博文,搬到 csdn 原文:http://rebootcat.com/2018/01/08/wechat_jump_hack/ 最近挺火的微信跳一跳 最近新版微信的『跳一跳』小程序着实火了一把,也把 ...

  6. 《微信跳一跳》安卓手机刷分软件搭建及攻略

    2019独角兽企业重金招聘Python工程师标准>>> 元旦期间被微信小程序的游戏刷屏幕了.手笨脚笨的我也尝试了下这新出的小玩意,实在话手脚不协调最高仅仅90分,处于做技术的角度,直 ...

  7. luogu P4745 [CERC2017]Gambling Guide(期望DP + 最短路实现)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 P4745 [CERC2017]Gambling Guide(期望DP + 最短路实现) Weblin ...

  8. 指尖大冒险、跳一跳升级版html5游戏全代码

    指尖大冒险.跳一跳升级版html游戏全代码 博主的话 文件目录 运行图片 指尖大冒险.html style.css 进行下一个游戏的开发! 博主的话 这是最后一个纯原生js代码编出来的游戏了.我连这个 ...

  9. 基于 python + WebDriverAgent 的“跳一跳”小程序高分教程

    当初微信放出了 6.6.1 版本,在微信首页二楼(下拉出现)位置重磅推出了"跳一跳"小程序,瞬间刷爆朋友圈. 在大家忙于游戏的时候,有人独辟蹊径基于 python + WebDri ...

最新文章

  1. 与现代传感器的接口:轮询ADC驱动程序
  2. Redis集群配置和常见异常解决
  3. 详解yarn的resource manager组件
  4. c语言教程的辅导书,清华大学出版社-图书详情-《C语言程序设计案例教程学习辅导》...
  5. Adopting Modern Objective-C
  6. codevs 1052:地鼠游戏
  7. Swift - RunTime(动态性) 问题 浅析
  8. 001 - JavaScript Array String
  9. 中国抗衰老护肤品市场趋势报告、技术动态创新及市场预测
  10. 不符合C语言语法常量,C语言题目:若变量已正确定义并赋值,为什么“a=a+7=c+b”不符合C语言语法的表达式?...
  11. 免费开源商用级人脸识别库SeetaFace6使用教程(含人脸识别、口罩识别、活体识别、人眼状态判断、性别年龄识别等)
  12. 从《如何在只有一份错误的协议的情况下,做好网络编程》论人品的重要性
  13. 网页打开慢的原因及分析
  14. metasploit的SET的Credential Harvester Attack Method
  15. FireShot在windows2000上安装的问题
  16. 基于Flask快速搭建一个管理系统
  17. 副业项目:今日头条音频项目,日入200+
  18. VMware虚拟机安装windows系统
  19. 满足哪些条件的商品有资格参与亚马逊秒杀卖家们知多少?
  20. 功能安全-26262-理论到实践-基础知识-标准机构与认可、认证

热门文章

  1. 创建一个windows服务的小程序及注意事项
  2. Reproducible Research in Computational Science
  3. 在Android Studio中进行代码混淆
  4. HTTP MIME type
  5. 条款10 令operator=返回一个reference to *this
  6. OC与c混编实现Java的String的hashcode()函数
  7. struts2处理上传文件路径问题
  8. 在VS2010中使用wxWidgets 2.9.3
  9. oracle入门学习(3) 所用的学习环境介绍与设置
  10. 在IIS中写Python的CGI脚本