P4316 绿豆蛙的归宿
作者:互联网
P4316 绿豆蛙的归宿
概率,拓扑排序。
没想到啊,自己竟然被一道黄题卡住了。
有向无环图,直接拓扑排序走起。
这里可能有点难的也就概率吧。
这里的期望长度=每条边的长度*走过这条边的概率 的总和。
#include <bits/stdc++.h>
#define ll long long
#define maxn 100010
using namespace std;
ll n,m,hd[maxn],cnt;
double ans;
ll x,y,z;
struct Node{
ll nx,to,dis;
}e[maxn<<2];
inline ll read(){
ll x=0,f=0;char c=getchar();
while(!isdigit(c))
f|=c=='-',c=getchar();
while(isdigit(c))
x=(x<<1)+(x<<3)+(c^48),c=getchar();
return f?-x:x;
}
inline void add(ll u,ll v,ll w){
e[++cnt].to=v;
e[cnt].nx=hd[u];
e[cnt].dis=w;
hd[u]=cnt;
}
inline void dfs(ll nw,double ak){
ll tmp=0;
for(register int i=hd[nw];i;i=e[i].nx)
++tmp;
ak/=tmp;
for(register int i=hd[nw];i;i=e[i].nx){
ans+=ak*e[i].dis;
dfs(e[i].to,ak);
}
}
int main(){
n=read();m=read();
for(register int i=1;i<=m;++i){
x=read();y=read();z=read();
add(x,y,z);
}
dfs(1,1);
printf("%.2lf\n",ans);
return 0;
}
标签:归宿,ll,绿豆蛙,long,maxn,P4316,define 来源: https://www.cnblogs.com/sissi/p/15116288.html