Cod sursa(job #1997740)

Utilizator SenibelanMales Sebastian Senibelan Data 5 iulie 2017 11:38:26
Problema Zvon Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#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;
}