//This is getting accepted! #include<bits/stdc++.h> #define pb push_back #define mp make_pair #define FI first #define SE second #define ll long long #define oo 1000000009 using namespace std; typedef pair<int, int> pii; typedef vector<int> vi; typedef long long lol; const lol MOD = 1e9 + 7; const double EPS = 1e-8; const double PI = 2 * acos(0.0); const int MAXN = 1e5 + 5; int n; int a[MAXN]; double p[MAXN]; double res; bool vis[MAXN]; stack<int> sta; int main(){ // #ifndef ONLINE_JUDGE // freopen("inp.txt", "r", stdin); // freopen("out.txt", "w", stdout); // #endif scanf("%d", &n); for (int i = 0; i < n; ++i) { scanf("%d%lf", a + i, p + i); --a[i]; p[i] /= 100; } res = 0; memset(vis, 0, sizeof vis); for (int i = 0; i < n; ++i) { if (!vis[i]) { int u = i; while (!vis[u]) { sta.push(u); vis[u] = true; u = a[u]; } if (a[u] != -1) { double prob = 1; int v = u; do { prob = prob * p[v]; v = a[v]; } while (v != u); res = res + prob; u = i; } while (!sta.empty()) { a[sta.top()] = -1; sta.pop(); } } } printf("%.2lf", res); return 0; }