【刷题笔记】数学期望DP

news/2024/9/19 12:14:27/文章来源:https://www.cnblogs.com/GSNforces/p/18417140

绿豆蛙的归宿

如果正着求 , 需要记录从起点到当前点的概率 ,这个概率是会传递的。所以考虑倒着求 ,则

\[f[x]=(val(x,y)+f[y])/k \]

爬树的甲壳虫

期望DP,多倒序求解。 这一题如果正着求会掉到0所以考虑倒序。

\[f[n]=0\\ f[i]=1+p[i+1]∗f[0]+(1−p[i+1])∗f[i+1]\]

共得到从0到\(n\)\(n+1\)个方程和未知数,可以求解。
将上述式子一波带入和化简后得到

\[f[0]=1+(1−p[1])+(1−p[1])∗(1−p[2])+...\\ +(1−p[1])∗(1−p[2])∗...∗(1−p[n−1])\\+f[0]∗(p[1]+(1−p[1])∗p[2]+...+(1−p[1])∗(1−p[2])∗...∗(1−p[n−1])∗p[n])\]

记为

\[f[0]=A+B∗f[0] \]

\[f[0]\%p=\frac{A}{1-B}\%p \]

由费马小定理得

\[f[0]=A∗(1-B)^{p-2}\%p \]

ボール

当前状态为\(s\) ,往\(i\)的位置砸

如果砸向左边

\[a=s \& \sim (1<<(i+1)) \]

如果砸向中间

\[b=s \& \sim (1<<i) \]

如果砸向右边

\[c=s \& \sim (1<<(i-1)) \]

动态规划方程

\[f[s]=1+f[a]/3+f[b]/3+f[c]/3 \]

可以使用记忆化搜索实现

WJMZBMR打osu! / Easy

我们设\(f[i]\)表示到第\(i\)个的数学期望,\(len\)表示当前连续0的个数。当前有3个状态。
如果为\(o\)

\[f[i]=f[i-1]+(len+1)^2-len^2=f[i-1]+2*len+1\\ len=len+1\]

如果为\(x\)

\[f[i]=f[i-1]\\ len=0\]

如果为\(?\)

\[f[i]=\frac{1}{2}*(f[i-1]+2*len+1+f[i-1])=f[i-1]+len+0.5\\ len=\frac{1}{2}*(len+1+0)=\frac{1}{2}*(len+1)\]

对于?情况的证明:有\(\frac{1}{2}\)的概率是\(o\),也有\(\frac{1}{2}\)的概率是\(x\),所以\(f\)\(\frac{1}{2}\)的概率长度加1,也有\(\frac{1}{2}\)的概率长度不变;\(len\)\(\frac{1}{2}\)的概率长度加1,也有\(\frac{1}{2}\)的概率长度不变,注意\(len\)\(f\)都记录的数学期望。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/798614.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常回家看看之house_of_catWO

house_of_cat 前言: house of cat 这个利用手法和前面提到的 house of kiwi ,和 house of emma 利用的手法是一个链子,当程序无法通过main函数返回时候,或者程序不能显性调用exit函数的时候,我们可以通过 __malloc_assert 来刷新IO流,当然这个函数在2.35之后移除了刷新IO…

C++11 线程同步接口std::condition_variable和std::future的简单使用sk

合集 - C++(1)1.C++11 线程同步接口std::condition_variable和std::future的简单使用09-17收起 std::condition_variable 条件变量std::condition_variable有wait和notify接口用于线程间的同步。如下图所示,Thread 2阻塞在wait接口,Thread 1通过notify接口通知Thread 2继续执…

安全:nftables:基础知识

一,policy: 1,原文档链接: https://docs.redhat.com/zh_hans/documentation/red_hat_enterprise_linux/9/html/configuring_firewalls_and_packet_filters/assembly_creating-and-managing-nftables-tables-chains-and-rules_getting-started-with-nftables#con_basics-of-nft…

Leetcode 952. 按公因数计算最大组件大小

1.题目基本信息 1.1.题目描述 给定一个由不同正整数的组成的非空数组 nums ,考虑下面的图: 有 nums.length 个节点,按从 nums[0] 到 nums[nums.length - 1] 标记;只有当 nums[i] 和 nums[j] 共用一个大于 1 的公因数时,nums[i] 和 nums[j]之间才有一条边。 返回 图中最大连…

Leetcode 19.删除链表的倒数第第N个结点

1.题目基本信息 题目:给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 地址:https://leetcode.cn/problems/remove-nth-node-from-end-of-list/description/ 2.解题方法 2.1.解题思路 使用快慢指针 2.2.解题步骤 第一步,初始化快指针为head,慢指针指向一…

Leetcode 297. 二叉树的序列化与反序列化

1.题目基本信息 1.1.题目描述 序列化是将一个数据结构或者对象转换为连续的比特位的操作,进而可以将转换后的数据存储在一个文件或者内存中,同时也可以通过网络传输到另一个计算机环境,采取相反方式重构得到原数据。 请设计一个算法来实现二叉树的序列化与反序列化。这里不限…

曾亨瑾第一次作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zjlg/rjjc/这个作业的目标 发布一篇随便简单介绍自己姓名 曾亨瑾学号 2022329301104一、自我介绍 1.基本信息 大家好,我是电气工程及其自动化(2)班的曾亨瑾,来自广东东莞。 2.兴趣爱好 我喜欢打羽毛球和慢跑(虽然都是…

2024软件工程第二次作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/SE2024这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/SE2024/homework/13253这个作业的目标 开发类“羊了个羊”消除类小游戏,并借助AIGC技术提高效率学号 052203132项目展示Github地址:https://github.c…

宏定义与特别运用

目录宏定义数值宏常量字符串宏常量用define宏定义注释符号?程序的编译过程预处理中宏替换和去注释谁先谁后?如何写一个可靠的宏函数do-while-zero结构do-while-zero的评价宏定义中的空格宏只能在main函数上面定义吗?宏的作用范围#undef宏替换是在函数调用之前进行.块中进行#…

白云龙期货投资-第六讲

## 价量行情中的配合 1,价涨量增,顺势推动。 2,价量背离,趋势转变 (价与量在相对高位称为顶背离,在下跌末期为底背离。背离后如果想再次上涨或者下跌,一般价格都会出现一个盘整期,而成交量则出现缩量地量期)价量行情中的配合 1,价涨量增,顺势推动。 2,价量背离,趋势…

软件工程结对项目 3:python实现自动生成小学四则运算题目的程序

这个作业属于哪个课程 广工计院计科34班软工这个作业要求在哪里 作业要求团队成员1 庄崇立3122004633团队成员2 罗振烘3122004748这个作业的目标 结对合作完成小学四则运算题目的程序,熟悉项目开发流程,提高团队合作能力一、GitHub地址 二、需求 1.题目:实现一个自动生成小学…

结构、权限修饰符、类

结构、权限修饰符、类 结构(struct:自定义的数据结构) struct student {// 成员变量int number;char name[100];void func(){ // 成员函数(方法)number++;} };// 1. 形参为引用 void func1(student &stu){stu.number = 2000;strcpy_s(stu.name, sizeof(stu.name…