测评WA,本地RE,求找错
#include<bits/stdc++.h>
using namespace std;
int n,m;
struct node
{
int v,w;
};
vector<node>vec[100005];
long double dp[100005],in[100005];
int co[100005];
void dfs(int k)
{
for(int i=0;i<vec[k].size();i++)
{
dp[vec[k][i].v]+=(dp[k]*1.0+(long double)(vec[k][i].w*1.0*in[k]))*1.0/(long double)vec[k].size();
in[vec[k][i].v]+=in[k]*1.0/(long double)vec[k].size();
co[vec[k][i].v]--;
if(!co[vec[k][i].v])dfs(vec[k][i].v);
}
}
signed main()
{
freopen("P4316_1.in","r",stdin);
// freopen("P4316.out","w",stdout);
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int u,v,w;
cin>>u>>v>>w;
node ci;
ci.v=v;ci.w=w;
vec[u].push_back(ci);
co[v]++;
}
in[1]=1;
dfs(1);
// for(int i=1;i<=n;i++)
// {
// cout<<dp[i]<<endl;
// }
cout<<dp[n]<<endl;
}