Pagini recente » Cod sursa (job #2700439) | Cod sursa (job #1690793) | Cod sursa (job #2596002) | Cod sursa (job #3140227) | Cod sursa (job #100602)
Cod sursa(job #100602)
#include<cstdio>
#include<vector>
using namespace std;
struct nod{
int cost;
vector<int> copii;
};
vector<nod> v;
int n;
void parc(int i)
{
int j, s;
s=v[i].copii.size();
if(s==0)
{v[i].cost=1;
//printf("%d=1\n", i);
return;
}
for(j=0; j<s; j++)
{parc(v[i].copii[j]);
//printf("%d %d\n", v[i].copii[j], v[v[i].copii[j]].cost);
v[i].cost+=v[v[i].copii[j]].cost;
}
}
int main()
{
freopen("zvon.in", "r", stdin);
freopen("zvon.out", "w", stdout);
int t;
int i, x, y;
scanf("%d", &t);
while(t>0)
{
scanf("%d", &n);
if(n==1)
printf("0\n");
else
{
v.clear();
v.resize(n+1);
for(i=1; i<n; i++)
{
scanf("%d %d", &x, &y);
v[x].cost=0;
v[y].cost=0;
v[x].copii.push_back(y);
}
parc(1);
printf("%d\n", v[1].cost);
}
t--;
}
return 0;
}