这题有个小坑,很荣幸踩了进去 就是ans得初始化必须是-inf , 各位可能会习惯性初始化为0 思路就是只有子点与相连边的和>0就选择它,反之不选,一个假冒伪劣的树形dp 因为建立树时写成了v[b].push_back[b]导致查不出错误,下次直接把头剁了 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int N = 1e6+8; ll n,dp[N],a,b,w,aa[N],ans; vector<ll>v[N]; map<pair<ll,ll&g...