树形结构。
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int n=1e6+11;
int a,b,c,q[n],ss;
double l,r,w[n];
vector<int>h[n];
void dfs(int x,double y)
{
w[x]=y;
for(int v:h[x])
{
dfs(v,y*r);
}
}
signed main()
{
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
cin>>a>>l>>r;
r=r/100;
r=1.00-r;
for(int i=0;i<a;i++)
{
cin>>b;
if(b==0)
{
cin>>c;
q[i]=c;
}
for(int j=1;j<=b;j++)
{
cin>>ss;
h[i].push_back(ss);
}
}
dfs(0,l);
double k=0;
for(int i=0;i<a;i++)
{
//cout<<w[i]<<endl;
if(q[i]!=0)
{
k+=q[i]*w[i];
}
}
int f=k;
cout<<f<<endl;
}