#include<bits/stdc++.h>
using namespace std;
const int N=2e3+5;
vector<pair<signed,signed>>g[N];
double dis[N];
signed n,m,s,e;
bool vis[N];
void dijk(){
priority_queue<pair<double,signed>>q;
q.push({1,s});
dis[s]=1;
while(q.size()){
signed u=q.top().second;
q.pop();
if(vis[u])continue;
vis[u]=1;
for(auto [v,w]:g[u]){
if(dis[v]<dis[u]*w/100){
dis[v]=dis[u]*w/100;
q.push({dis[v],v});
}
}
}
printf("%.8lf\n",100/dis[e]);
}
signed main(){
ios::sync_with_stdio(0);
cin>>n>>m;
for(signed i=1;i<=n;i++){
signed x,y,z;
cin>>x>>y>>z;
z=100-z;
g[x].push_back({y,z});
g[y].push_back({x,z});
}
cin>>s>>e;
dijk();
return 0;
}
全wa求助