【bzoj3036】绿豆蛙的归宿 期望dp

P4316 绿豆蛙的归宿 题解 随着新版百度空间的上线,Blog 宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 阅读详情

题目描述

随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。

给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。
到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。
现在绿豆蛙想知道,从起点走到终点的所经过的路径总长度期望是多少?

输入

第一行: 两个整数 N M,代表图中有N个点、M条边
第二行到第 1+M 行: 每行3个整数 a b c,代表从a到b有一条长度为c的有向边

输出

从起点到终点路径总长度的期望值,四舍五入保留两位小数。

样例输入

4 4
1 2 1
1 3 2
2 3 3
3 4 4

样例输出

7.00

提示

对于100%的数据  N<=100000,M<=2*N

题解:条件期望公式E=(sigema(E(条件i)) + 当前的贡献)* 当前发生的概率。所以设dp【i】表示i号节点到终点的期望长度,dp【i】=sigema(dp【to【k】】+len【k】)/出度。
总结:一定要理解条件期望中的贡献值的意思,对于次数、天数等不能算成贡献。
#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#define N 300000
using namespace std;
int n,m;
int last[N],to[N],head[N],val[N],cnt=0,cd[N];
bool vis[N];
double dp[N];
void ins(int u,int v,int w){
	last[++cnt]=head[u];head[u]=cnt;to[cnt]=v;val[cnt]=w;
}
void dfs(int x){
	if(vis[x]) return ;
	vis[x]=1;
	for(int i=head[x];i;i=last[i]){
		dfs(to[i]);
		dp[x]+=(dp[to[i]]+(double)val[i]);
	}
	if(cd[x]>0) dp[x]/=cd[x]*1.00;
}
int main(){
	int u,v,w;
	scanf("%d%d",&n,&m);
	while(m--){
		scanf("%d%d%d",&u,&v,&w);
		ins(u,v,w);cd[u]++;
	}
	dfs(1);
	printf("%.2lf",dp[1]);
	return 0;
}
/*


4 4
1 2 1
1 3 2
2 3 3
3 4 4

7.00
*/


告别Qweb!用ReportBro在Odoo 13-19版本中5步搞定动态报表 本文介绍了如何在Odoo 13-19版本中使用ReportBro替代Qweb快速实现动态报表设计。通过5步集成指南,包括环境准备、前端集成、后端服务搭建等,展示了ReportBro在可视化设计、即时预览和多格式输出(PDF/XLSX)方面的优势,显著提升开发效率和报表灵活性。 阅读详情

相关推荐

python机器人编程——用pytorch实现六轴机械臂的正向和逆向数值解算,及python算法解析

前面对六轴(或多轴)机械臂进行了一些研究,特别是利用几何进行简化,实现逆解,来完成比较简单的搬用任务。然而,如果需要比较精确的操作任务,可能需要更加复杂的机械臂解算。其中比较复杂的是数值解算,这种解算往往涉及到比较复杂的机器人运动等原理知识,比较难以上手。但是,python的生态挺全面,已经有很多牛人实现了数值解法,但是去看他们的代码,还是觉得费劲。此外,随着深度神经网络的兴起,很多是用建立深度学习神经网络,去利用机械臂输入输出的大数据,训练机械臂的控制模型,这个上手也比较慢。

JAMES费的空间 5793

3036: 绿豆蛙的归宿 - BZOJ

Description 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。现在绿豆蛙想知道,从起点走到终点的所经过的路径总长度期望是多少? Input 第一行...

weixin_30907935的博客 216

SIwave串扰分析保姆级教程:从Allegro文件导入到结果解读,手把手教你排查PCB信号问题

本文提供SIwave串扰分析的详细教程,从Allegro文件导入到结果解读,手把手教你排查PCB信号问题。涵盖环境准备、参数配置、串扰扫描技巧及实战案例,帮助工程师精准定位和解决高速PCB设计中的串扰问题,提升信号完整性分析能力。

weixin_42620913的博客 256

BZOJ3036 绿豆蛙的归宿(期望dp)

题解: 这题是DAG上的期望dp。 确定dp状态dp[i]表示从i点到n点所需要的期望值 之后就可以很轻易的想到反向连边,为了保证每次枚举到的点不是未枚举到点的自状态,需要用拓扑序来维护枚举顺序。之后就是dp的转移 dp[y]=(dp[x]+wei[i])/outdeg[y]dp[y]=(dp[x]+wei[i])/outdeg[y]dp[y]=(dp[x]+wei[i])/outdeg[y] 代...

TelmaZzzz的博客 262

映泰TB250-BTC主板魔改BIOS支持8/9代CPU实战与开机故障排查

BIOS(基本输入输出系统)是计算机硬件与操作系统之间的桥梁,负责初始化硬件和提供运行时服务。其工作原理是通过存储在主板芯片中的固件程序,在上电自检(POST)阶段完成对CPU、内存等关键组件的检测与配置。魔改BIOS的技术价值在于突破硬件限制,通过修改微码和电源管理模块,让旧平台支持新处理器,从而以极低成本实现性能跃升,在预算有限或追求极致性价比的DIY、办公和软路由等应用场景中极具吸引力。本文以映泰TB250-BTC矿板为例,详细解析了通过软刷方式刷入魔改BIOS,并重点解决了刷写后常见的“开机风扇转一

weixin_29164185的博客 406

数字音频接口之I2S总线协议详解

1、SDATA,也就是串行数据信号,使用二进制传输数字信号。请注意数据的传输形式为补码的方式2、例如音频的采样率是8K,一s内存采样8K个点,一个点包含一个左声道,一个右声道,所以LRCK是8K,BCLK是2×采样频率×采样位数3、同时双向(TX和RX)音频流:串行数据同步移位到时钟信号SCK和LRCK。在SCK的下降沿将TX数据写入SDOUT引脚,并在SCK的上升沿从SDIN引脚读取RX数据。始终首先发送最高有效位(MSB);TX和RX均可在主模式和从模式下使用。

卓学课堂 3万+

洛谷4316 bzoj3036 绿豆蛙的归宿 拓扑排序+期望dp

题目链接 题解: 答案是∑每条边\sum 每条边

forever_shi的博客 493

【网络安全 | 渗透工具】Hydra安装使用详细教程

Hydra,也称九头蛇,是一款非常强大的暴力破解工具(密码能否被破解关键在于字典是否足够强大),支持多种服务协议的账号和密码进行爆破,包括Web登录、数据库、SSH、FTP等服务,支持Linux、Windows、Mac平台安装。该工具支持以下协议的爆破:Hydra在kali中自带,这里介绍windows下的安装方法。zip下载地址:https://gitcode.com/maaaaz/thc-hydra-windows/tree/master下载完成后解压: 再将thc-hydra-windows-mast

等风来 9200

3036: 绿豆蛙的归宿

题目链接题目大意:带权DAG,从1走到n,若到达点x后有k条出边,走这k条边的概率均为1/k,求1-n期望路径长度题解:f[i]表示i−n的期望路径长度f[i]表示i-n的期望路径长度 f[i]=∑(f[e[i].to]+e[i].val)/outd[i]f[i]=∑(f[e[i].to]+e[i].val)/outd[i] outd[i]表示点i的出度,因为是等概率,所以直接除就可以了……期望

蒟蒻的Bzoj记录 500

Python3+PCAN-USB基于PCAN-Basic二次开发实现上位机功能

一、环境搭建 1.概述 本文主要是通过Python3与CAN总线工具PCAN-USB基于官方PCAN-Basic库实现CAN总线消息读写功能。 2.PCANBasic.py和PCANBasic.dll下载地址 https://www.peak-system.com/fileadmin/media/files/pcan-basic.zip 3.Python安装 下载地址:https://www.p...

测试领域技术分享 5185

Linux系统之部署经典魔塔小游戏

Linux系统之部署经典魔塔小游戏

jks212454的博客 1817

[BZOJ3036]绿豆蛙的归宿 期望DP

[BZOJ3036] f[x]表示从x到n的期望路径长度,倒着按Topsort转移即可 正序转移的话每条边的概率不对,所以要倒序 #include<bits/stdc++.h> #define rep(i,a,b) for(int i=(a);i<=(b);i++) using namespace std; const int N=1e6; struct node{int ...

Shelter 262

anaconda navigator 卡在loading application界面一直没有反应解决办法

在打开anaconda navigator 程序的时候,遇到了2个问题。第一个问题:打开的时候弹出提示:There is an instance of Anaconda Navigator already running.第二个问题:程序一直卡在loading application界面一直没有反应。以下是我的解决办法,有效果。

猿小白的博客 4384

BZOJ 3036 绿豆蛙的归宿 期望DP

Time Limit: 2 Sec Memory Limit: 128 MB Submit: 610 Solved: 431Description随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。 到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该

Monica 482

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

[bzoj3036]绿豆蛙的归宿 期望DP

人类的全部历史都告诫有智慧的人,不要笃信时运,而应坚信思想。

Unlimited Code Works 354

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

[BZOJ 3036]绿豆蛙的归宿:期望DP

点击这里查看原题f[i]表示从i到N的期望,因此f[i]为i能到的各个点的期望+边权的和除k。/* User:Small Language:C++ Problem No.:3036 */ #include<bits/stdc++.h> #define ll long long #define inf 999999999 using namespace std; const int M=1e5+5;

SmallSXJ的博客 451

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

[BZOJ3036]绿豆蛙的归宿 ——期望DP

题意给定一张有向无环图,起点为1,终点为NN,每个点ii有kik_i条出边,从每个点走其中一条出边的概率是1k\dfrac{1}{k},求从1到NN的期望步数。ii到终点的期望步数为f(i)=∑f(j)+w(i,j)dif(i)=\sum\dfrac{f(j)+w(i,j)}{d_i} 可以先求出dfs序,倒过来DP#include <cstdio> #define N 100010int n,G

CE玩家 744

BZOJ3036[绿豆蛙的归宿] 期望概率DP

期望概率DP

Venishel的博客 334

【bzoj3036】绿豆蛙的归宿——期望dp

Description 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。现在绿豆蛙想知道,从起点走到终点的所经过的路径总长度期望是多少? Inpu...

weixin_30315723的博客 72

[BZOJ]3036 绿豆蛙的归宿 期望dp

3036: 绿豆蛙的归宿 Time Limit: 2 Sec  Memory Limit: 128 MB Submit: 614  Solved: 434 [Submit][Status][Discuss] Description 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起

Le Petit Prince 391

bzoj3036--绿豆蛙的归宿--期望dp

Description 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。现在绿豆蛙想知道,从起点走到终点的所经过的路径总长度期望是多少? ...

135

【BZOJ 3036】绿豆蛙的归宿 期望dp

f[i]表示i到n的期望步数,刷水有益身心健康 #include #include #include #define maxn 200020 using namespace std; int n,m,tot=1,head[maxn],q[maxn],out[maxn],vis[maxn]; double f[maxn]; struct edge{int w,v,next;}e[maxn]; vo

pbihao的博客 284

BZOJ 3036: 绿豆蛙的归宿 期望dp

3036: 绿豆蛙的归宿 Time Limit: 2 Sec  Memory Limit: 128 MB Submit: 520  Solved: 375 [Submit][Status][Discuss] Description 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起

BlackJack 440

【BZOJ】3036 绿豆蛙的归宿 期望DP

题目传送门 补一发期望DP,这道题困扰了我很久了,今天终于A掉了,比较开心:) f[i]=∑j∈son[i]f[j]+dis(i,j)deg[i] 上面就是整道题的核心,只要从第一个节点开始DFS就行了。 附上AC代码: #include #include #define N 100010 using namespace std; struct side{ int to,w,

Chester King 310

【bzoj3036】绿豆蛙的归宿 期望dp

题目描述 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿。 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。现在绿豆蛙想知道,从起点走到终点的所经过的路径总长度期望是多少? 输入 第一行: 两个整数 N M...

weixin_30684743的博客 71

[BZOJ3036][绿豆蛙的归宿][期望与概率+DP]

[BZOJ3036][绿豆蛙的归宿][期望与概率]题目大意:给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度。绿豆蛙从起点出发,走向终点。 到达每一个顶点时,如果有K条离开该点的道路,绿豆蛙可以选择任意一条道路离开该点,并且走向每条路的概率为 1/K 。 现在绿豆蛙想知道,从起点走到终点的所经过的路径总长度期望是多少?思路:期望与概率裸题???设f[u]f[u]为uu点的期望长度,

羽裳 421
上一篇: 【bzoj2318】Spoj4060 game with probability Problem 概率dp
下一篇: 【bzoj4318】OSU! 期望dp
shiyongyang
博客等级 码龄9年 14粉丝 77原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值