Pagini recente » Cod sursa (job #139631) | Cod sursa (job #1282207) | Cod sursa (job #2236469) | Cod sursa (job #570531) | Cod sursa (job #1997740)
#include <fstream>
#include <vector>
#include <algorithm>
#include <cstring>
using namespace std;
ifstream in("zvon.in");
ofstream out("zvon.out");
const int NMAX = 100005;
int T, N;
int cost[NMAX];
vector <int> G[NMAX];
bool cmp(int a, int b){
return cost[a] < cost[b];
}
void DFS(int nod){
int subordonat;
cost[nod] = G[nod].size();
for(int i = 0; i < G[nod].size(); ++i){
subordonat = G[nod][i];
DFS(subordonat);
}
if(G[nod].size()){
sort(G[nod].begin(), G[nod].end(), cmp);
for(int i = 0; i < G[nod].size(); ++i){
//out << "lame";
}
}
}
void ReadAndSolve(){
int a, b;
in >> T;
for(int i = 1; i <= T; ++i){
in >> N;
memset(cost, 0, sizeof(cost));
for(int j = 1; j < N; ++j){
in >> a >> b;
G[a].push_back(b);
}
DFS(1);
out << cost[1] << "\n";
}
}
int main(){
ReadAndSolve();
return 0;
}