Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<cstring>#include <cstdio>#include <vector>using namespace std;typedef long long LL;const int MAXN=1e5+5;vector<int> g[MAXN];int n, s;LL w[MAXN], dp[MAXN];LL dfs(int x, int fa){int sz=g[x].size();for(int i=0, idx; i<sz; i++){idx=g[x][i];if(idx==fa) continue;dfs(idx,x);w[x]+=w[idx];}return w[x];}int main(){int T;scanf("%d",&T);for(int cs=1; cs<=T; cs++){for(int i=1; i<=n; i++){g[i].clear();}scanf("%d%d",&n,&s);for(int i=0, x, y; i<n-1; i++){scanf("%d%d",&x,&y);g[x].push_back(y);g[y].push_back(x);