#pragma GCC optimize("O3") #pragma GCC target("avx") #include #include using namespace std; vector >v; long long dfs(int cur,vector &a){ long long r=0; for(int i=0;i0; a[cur]+=1; for(auto &e:v[cur])r+=dfs(e,a); a[cur]-=1; return r; } int main(){ int N,x; scanf("%d",&N); v.resize(N); for(int i=1;ia(N); printf("%lld\n",dfs(0,a)); }