首页 > 其他 > 详细

洛谷4316绿豆蛙的归宿

时间:2018-05-23 01:44:23      阅读:277      评论:0      收藏:0      [点我收藏+]

题目:https://www.luogu.org/problemnew/show/P4316

十分裸的裸题。甚至是有向无环图。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;
const int N=1e5+5;
int n,m,du[N],tp[N],head[N];
double f[N];
queue<int> q;
struct Edge{
    int next,to,w;
    Edge(int n=0,int t=0,int w=0):next(n),to(t),w(w) {}
}edge[N<<1];
int main()
{
    scanf("%d%d",&n,&m);int x,y,z;
    for(int i=1;i<=m;i++)
    {
        scanf("%d%d%d",&x,&y,&z);du[x]++;
        edge[i]=Edge(head[y],x,z);head[y]=i;
    }
    for(int i=1;i<=n;i++)
    {
        tp[i]=du[i];
        if(!du[i])q.push(i);
    }
    while(q.size())
    {
        int k=q.front();q.pop();
        for(int i=head[k];i;i=edge[i].next)
        {
            f[edge[i].to]+=((f[k]+edge[i].w)*1.0)/du[edge[i].to];
            tp[edge[i].to]--;if(!tp[edge[i].to])q.push(edge[i].to);
        }
    }
    printf("%.2lf",f[1]);
    return 0;
}

 

洛谷4316绿豆蛙的归宿

原文:https://www.cnblogs.com/Narh/p/9074618.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!