Cod sursa(job #1599427)

Utilizator andreey_047Andrei Maxim andreey_047 Data 13 februarie 2016 21:02:47
Problema Zvon Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <bits/stdc++.h>

using namespace std;

const int nmax = 100008;

int N,dp[nmax];
vector<int> G[nmax];

inline void DFS(int nod){

    if(!G[nod].size())++dp[nod];

 for(auto it: G[nod]){
     DFS(it);
     dp[nod]+=dp[it];
 }

}

int main(){
    int i,x,y,T;
    freopen ("zvon.in","r",stdin);
    freopen ("zvon.out","w",stdout);
    scanf("%d\n",&T);
    while(T--){
        scanf("%d\n",&N);
        for(i = 1; i < N; ++i){
            scanf("%d %d\n",&x,&y);
            G[x].push_back(y);
        }
        DFS(1);
        if(dp[1]==1)dp[1]=0;
        printf("%d\n",dp[1]);
        for(i = 1; i <= N; ++i)
            dp[i]=0,G[i].clear();
    }
    return 0;
}