Codeforces Round #688(Div 2) D. Checkpoints
思路
第一步,先推导1,0,0,……,0,就是1后面跟了n-1个0的时候
所需要的期望步数
封闭式推导
\(f_n\)代表从n关开始直接通关需要的步数的期望
n为1的情况,即就只有一个1
\(f_1=\cfrac{1}{2} \times 1+\cfrac{1}{2} \times (f_1+1)\)
整理得\(f_1=2\)
第一关时,你有一半的概率通关,有一半的概率回到自身重新开始
n为2的情况,1,0
\(f_1=\cfrac{1}{2} \times 1+\cfrac{1}{2} \times (f_2+1)\)
\(f_2=\cfrac{1}{2} \times 1+\cfrac{1}{2} \times (f_1+1)\)
整理得\(f_1=6\)
第一关时,你有一半的概率到达第二关,有一半的概率回到自身重新开始
第二关时,你有一半的概率通关,有一半的概率回到第一关重新开始
这样我们就可以进行归纳总结
把每个式子化简一下
\(f_1=\cfrac{1}{2} f_1+\cfrac{1}{2} f_2+1\)
\(f_2=\cfrac{1}{2} f_1+\cfrac{1}{2} f_3+1\)
\(f_3=\cfrac{1}{2} f_1+\cfrac{1}{2} f_4+1\)
……
\(f_i=\cfrac{1}{2} f_1+\cfrac{1}{2} f_{i+1}+1\)
……
\(f_n=\cfrac{1}{2} f_1+1\)
然后自己整理一下,就是两个等比数列的和
就得到了\(f_1\)的封闭式
对于任意情况的n时,\(f_1=2^{n+1}-2\)
思路推进
推导出1,……,0,0的期望公式之后,我们如果再后面继续添加1,0,……,0这样一个序列
那么他的期望是直接相加的,因为他是一个复活点(检查点),跟你前面的序列一点关系都没有
所以你无论怎么增加都是一个2的倍数,这样也就得到奇数的时候是无解的
代码实现
Codeforces Round #688(Div 2) D. Checkpoints的更多相关文章
- Codeforces Round #688 (Div. 2)
A. Cancel the Trains 题意:给定两个数组,找出这两个数组中有多少重复元素,然后输出 思路:直接找 代码: 1 #include<iostream> 2 #include ...
- Codeforces Round #366 (Div. 2) ABC
Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...
- Codeforces Round #354 (Div. 2) ABCD
Codeforces Round #354 (Div. 2) Problems # Name A Nicholas and Permutation standard input/out ...
- Codeforces Round #368 (Div. 2)
直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...
- cf之路,1,Codeforces Round #345 (Div. 2)
cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅..... ...
- Codeforces Round #279 (Div. 2) ABCDE
Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems # Name A Team Olympiad standard input/outpu ...
- Codeforces Round #262 (Div. 2) 1003
Codeforces Round #262 (Div. 2) 1003 C. Present time limit per test 2 seconds memory limit per test 2 ...
- Codeforces Round #262 (Div. 2) 1004
Codeforces Round #262 (Div. 2) 1004 D. Little Victor and Set time limit per test 1 second memory lim ...
- Codeforces Round #371 (Div. 1)
A: 题目大意: 在一个multiset中要求支持3种操作: 1.增加一个数 2.删去一个数 3.给出一个01序列,问multiset中有多少这样的数,把它的十进制表示中的奇数改成1,偶数改成0后和给 ...
随机推荐
- 老大说新项目的结构和 xxx 项目一样就可以了,我 ……(使用 Maven Archetype 快速创建项目)
前言 又要开发新项目了,还是创建新项目,怎么办?老大说按照 xxx 项目的结构创建一个新项目就可以了. 公众号:liuzhihangs,记录工作学习中的技术.开发及源码笔记:时不时分享一些生活中的见闻 ...
- 懒得写文档,swagger文档导出来不香吗
导航 前言 离线文档 1 保存为html 2 导出成pdf文档 3 导出成Word文档 参考 前言 早前笔者曾经写过一篇文章<研发团队,请管好你的API文档>.团队协作中,开发文档的重 ...
- 题解 AT3877 【[ARC089C] GraphXY】
参考的博客 在[有趣的思维题]里看到了这道题. 题意: 给出一个\(A\times B\)的矩阵,其中第i行第j列元素为\(d_{i,j}\),试构造一个有向图,满足: 有向图点数\(\le 300\ ...
- 【SpringBoot】09.SpringBoot整合Freemarker
SpringBoot整合Freemarker 1.修改pom文件,添加坐标freemarker启动器坐标 <project xmlns="http://maven.apache.org ...
- Spring中基于XML的声明式事务控制配置步骤
1.配置事务管理器 2.配置事务的通知 此时,我们就需要导入事务的约束 tx名称空间和约束,同时也需要aop的 使用tx:advice标签配置事务通知 属性: id:给事务通知起一个唯一标识 tran ...
- JavaScript ES 模块:现代化前端编程必备技能
自从 ES 模块被添加到规范中后,JavaScript 中的模块就更加简单了.模块按文件分开,异步加载.导出是用 export 关键字定义的:值可以用 import 关键字导入. 虽然导入和导出单个值 ...
- Spider--补充--jsonpath的使用
# 知识点参见:https://blog.csdn.net/muzico425/article/details/102763176 # 示例:爬取示例网站的首页的评论: # 解析得到的字符串r.tex ...
- 关于目标检测(Object Detection)的文献整理
本文对CV中目标检测子方向的研究,整理了如下的相关笔记(持续更新中): 1. Cascade R-CNN: Delving into High Quality Object Detection 年份: ...
- 《HarmonyOS设备开发入门手册》
HarmonyOS设备开发入门手册-更新 [欢迎大家点击下载] 作者:连志安 想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区 https://harmonyos.51cto. ...
- asyncio多进程+pyppeteer浏览器控制+pyquery解析实现爬虫demo
import asyncio from pyppeteer import launch from pyquery import PyQuery as pq async def main(): brow ...