#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;

double ans;

int visit[100005];
vector< vector< pair<int, int> > > X(100005);

void dfs(int i, int k)
{
    if(!visit[i])
    {
        visit[i] = k;
        
        for(vector< pair<int, int> >::iterator it=X[i].begin(); it!=X[i].end(); it++)
            dfs(it->first, k);
    }
    else if(visit[i]==k)
    {
        int j = X[i][0].first;
        double tmp = 0.01*X[i][0].second;
        
        while(j!=i)
        {
            tmp*= 0.01*X[j][0].second;
            j = X[j][0].first;
        }
        
        ans+= tmp;
    }
}

int main() {
    /* Enter your code here. Read input from STDIN. Print output to STDOUT */ 
    
    int N;
    scanf("%d", &N);
    
    for(int i=1; i<=N; i++)
    {
        int a, b;
        scanf("%d %d", &a, &b);
        
        X[i].push_back(make_pair(a, b));
    }
    
    ans = 0;
    
    int k = 1;
    
    for(int i=1; i<=N; i++)
    {
        if(!visit[i])
            dfs(i, k++);
    }
        
    printf("%.2lf\n", ans);
    
    return 0;
}