ITREE - Nhãn của cây
Tác giả: flashmt
Ngôn ngữ: C++
#include<iostream>
#define fr(a,b,c) for (a=b;a<=c;a++)
#define frr(a,b,c) for (a=b;a>=c;a--)
using namespace std;
int main()
{
int test,i,n,a[1111],b[1111],f[1111],d[1111];
cin >> test;
while (test--)
{
cin >> n;
fr(i,1,n)
{
d[i]=1; f[i]=0;
}
fr(i,2,n)
{
scanf("%d%d",&a[i],&b[i]);
d[a[i]]=0;
}
frr(i,n,2)
if (d[i] || b[i]<f[i]) f[a[i]]+=b[i];
else f[a[i]]+=f[i];
cout << f[1] << ".00" << endl;
}
return 0;
}