#include<bits/stdc++.h>
using namespace std;
typedef pair <int,double> PID;
typedef double db;
int n,m,a,b;
db d[10005];
bool vis[10005];
vector <PID> v[10005];
priority_queue <PID,vector <PID>,less <PID> > pq;
void dijk() {
d[a]=1;
pq.push(make_pair(d[a],a));
while (!pq.empty()) {
int u=pq.top().second;
pq.pop();
if (vis[u]) continue;
vis[u]=true;
for (int j=0; j<v[u].size(); j++) {
int y=v[u][j].first;
int l=v[u][j].second;
if (d[y]<d[u]*l) {
d[y]=d[u]*l;
pq.push(make_pair(d[y],y));
}
}
}
}
int main() {
scanf("%d%d",&n,&m);
for (int i=1; i<=n; i++) {
int x,y;
db z;
scanf("%d%d%lf",&x,&y,&z);
v[x].push_back(make_pair(y,1-z/100));
v[y].push_back(make_pair(x,1-z/100));
}
cin>>a>>b;
dijk();
printf("%.8lf",100/d[b]);
return 0;
}