1065. [Nescafe19] 绿豆蛙的归宿

【题目描述】

给出一个有向无环的连通图,起点为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

【数据范围】

时间限制:1 s   内存限制:128 MB

对于20%的数据   N<=100

对于40%的数据   N<=1000
对于60%的数据   N<=10000
对于100%的数据  N<=100000,M<=2*N

题解:

由于要讲课所以回来补一下坑……这题是一道概率的入门题啊……

设f[i]为从i走到终点的期望步数,显然f[n]=0;

我们考虑期望的线性性,由某个点i走到终点的期望步数f[i]应该等于Σ(f[j]+(j->i边权/j点出度),j->i有边)

我们建立反图递归求,最后求出的f[1]即为所求。

代码见下:

 #include<cstdio>
#include<cstring>
#include<queue>
using namespace std;
const int N=;
int n,m,e;
queue<int>q;
int rudu[N+],tmp[N+],chudu[N+],adj[N+];
double f[N+];
struct node{int zhong,next;double val;}s[N*+];
inline void add(int qi,int zhong,double val)
{
s[++e].zhong=zhong;s[e].val=val;
s[e].next=adj[qi];adj[qi]=e;
}
int main()
{
//freopen("Lex.txt","r",stdin);
freopen("ldfrog.in","r",stdin);
freopen("ldfrog.out","w",stdout);
scanf("%d%d",&n,&m);
int a,b;double c;
for(int i=;i<=m;i++)
scanf("%d%d%lf",&a,&b,&c),rudu[a]++,chudu[b]++,add(b,a,c);
q.push(n);
for(int i=;i<=n;i++)tmp[i]=rudu[i];
while(!q.empty())
{
int rt=q.front();q.pop();
for(int i=adj[rt];i;i=s[i].next)
{
int u=s[i].zhong;tmp[u]--;
f[u]+=(f[rt]+s[i].val)/rudu[u];
if(tmp[u]==)q.push(u);
}
}
printf("%.2lf",f[]);
}

COGS1065

[cogs1065]绿豆蛙的归宿的更多相关文章

  1. 【BZOJ3036】绿豆蛙的归宿 拓补排序+概率

    [BZOJ3036]绿豆蛙的归宿 Description 随着新版百度空间的下线,Blog宠物绿豆蛙完成了它的使命,去寻找它新的归宿. 给出一个有向无环的连通图,起点为1终点为N,每条边都有一个长度. ...

  2. BZOJ3036: 绿豆蛙的归宿&Wikioi2488:绿豆蛙的归宿

    3036: 绿豆蛙的归宿 Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 108  Solved: 73[Submit][Status] Descript ...

  3. BZOJ 3036: 绿豆蛙的归宿( 期望dp )

    从终点往起点倒推 . 在一个图 考虑点 u , 出度为 s : s = 0 , d[ u ] = 0 ; s ≠ 0 , 则 d( u ) = ( ∑ d( v ) ) / s ( ( u , v ) ...

  4. BZOJ3036绿豆蛙的归宿

    BZOJ3036绿豆蛙的归宿 锲下陟凝 褰宓万 郝瓦痕膳 叶诙摞 А知π剧 椐猊∫距 屠缲佗 ゲ蕖揪 俜欧彖鹤 磲砩ほ #琛扶 觅电闸ス 捆鳢げ 浜窠 魂睨"烁 蕞滗浼 洒ヂ跪 ...

  5. [COGS 1065] 绿豆蛙的归宿

    先贴题面w 1065. [Nescafe19] 绿豆蛙的归宿 ★   输入文件:ldfrog.in   输出文件:ldfrog.out   简单对比时间限制:1 s   内存限制:128 MB 随着新 ...

  6. P4316 绿豆蛙的归宿(期望)

    P4316 绿豆蛙的归宿 因为非要用bfs所以稍微麻烦一点qwq(大家用的都是dfs) 其实问题让我们求的就是经过每条边的概率*边权之和 我们可以用bfs把图遍历一遍处理概率,顺便把每条边的概率*边权 ...

  7. 【BZOJ 3036】 3036: 绿豆蛙的归宿 (概率DP)

    3036: 绿豆蛙的归宿 Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 491  Solved: 354 Description 随着新版百度空间的下线 ...

  8. codevs 2488 绿豆蛙的归宿

    2488 绿豆蛙的归宿 http://codevs.cn/problem/2488/  时间限制: 1 s  空间限制: 64000 KB  题目等级 : 黄金 Gold   题目描述 Descrip ...

  9. TYVJ P1933 绿豆蛙的归宿 题解(未完成)

    P1933 「Poetize3」绿豆蛙的归宿 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 随着新版百度空间的上线,Blog宠物绿豆蛙完成了它的使命,去寻找 ...

随机推荐

  1. 1009 产生数 2002年NOIP全国联赛普及组

    1009 产生数 2002年NOIP全国联赛普及组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold   题目描述 Description 给出一个整数 n(n< ...

  2. vue 过滤器filters的使用以及常见报错小坑(Failed to resolve filter)

    今天使用vue 过滤器中发现一个小坑,网上查到的大都是不正确的解决方法,故分享给大家: 原错误代码: // 过滤器 filter:{ FdishList:function(value){ if (!v ...

  3. mybatis拦截器使用

    目录 mybatis 拦截器接口Interceptor spring boot + mybatis整合 创建自己的拦截器MyInterceptor @Intercepts注解 mybatis拦截器入门 ...

  4. 自动化运维工具saltstack03 -- 之SaltStack的数据系统

    SaltStack数据系统 saltstack有两种数据系统:grains与pillar 1.SaltStack数据系统之grains grains可以收集minion端的静态数据(即机器启动时收集一 ...

  5. [转]50 Tips for Working with Unity (Best Practices)

    About these tips These tips are not all applicable to every project. They are based on my experience ...

  6. MAC终端安装指定版本node

    MAC终端安装指定版本node 安装brew 终端上运行 $ /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Home ...

  7. fail-fast 机制 思考

    HashMap的迭代器(Iterator)是fail-fast迭代器,而Hashtable的enumerator迭代器不是fail-fast的. Iterator支持fail-fast机制,而Enum ...

  8. arcgis10.2怎么把地理坐标系转化为投影坐标系(平面,米制坐标) arcmap 10.2 从 WGS_1984 转 Beijing_1954

    方法一:在Arcmap中转换:从 WGS_1984 转 Beijing_19541.加载要转换的数据,右下角为经纬度2.点击视图——数据框属性——坐标系统3.导入或选择正确的坐标系(如选:Beijin ...

  9. 20181016-4 Alpha阶段第1周/共2周 Scrum立会报告+燃尽图 04

    此作业要求https://edu.cnblogs.com/campus/nenu/2018fall/homework/2248 Scrum master:徐常实 一.小组介绍 组长:王一可 组员:范靖 ...

  10. multipart/form-data post 方法提交表单,后台获取不到数据

    这个和servlet容器有关系,比如tomcat等. 1.get方式 get方式提交的话,表单项都保存在http header中,格式是 http://localhost:8080/hello.do? ...