#include<bits/stdc++.h>
using namespace std;
const int N = 2000+10, M = 1e5+10;
int n, m;
int a, b;
double c;
int h[N], e[2*M], ne[2*M], idx;
double w[2*M];
double dis[N];
bool vis[N];
void add(int a, int b, double c){
e[idx] = b, w[idx] = c, ne[idx] = h[a], h[a] = idx++;
}
void dijkstra(){
dis[a] =1;
for(int i=1; i<=n; i++){
int t = -1;
for(int j=1; j<=n; j++){
if(!vis[j] && (t==-1 || dis[t]<dis[j])) t = j;
}
for(int j=h[t]; ~j; j=ne[j]){
int k = e[j];
dis[k] = max(dis[k], dis[t]*w[j]);
}
vis[t] = true;
if(vis[b]) return ;
}
}
int main(){
scanf("%d%d", &n, &m);
memset(h, -1, sizeof h);
for(int i=0; i<m; i++){
scanf("%d%d%lf", &a, &b, &c);
c = (100-c)/100;
add(a, b, c), add(b, a, c);
}
scanf("%d%d", &a, &b);
dijkstra();
printf("%.8lf", 100/dis[b]);
return 0;
}