func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long int N = 200005;   const long long int mod = 1e9 + 7;   long long int n, i, j, m, k;   long long int a[N];   long long int sz[N], c[N];   long long int vis[N];   vector<long long int> g[N];   long long int ans = 0;   void dfs(long long int v, long long int p) {     vis[v] = c[v];     for (auto x : g[v]) {       if (x != p) {         dfs(x, v);         vis[v] += vis[x];       }     }     ans += min(vis[v], 2 * k - vis[v]);   }   int32_t main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     cin >> n >> k;     for (i = 1; i <= 2 * k; i++) {       long long int x;       cin >> x;       c[x] = 1;     }     for (i = 1; i < n; i++) {       long long int x, y;       cin >> x >> y;       g[x].push_back(y);       g[y].push_back(x);     }     dfs(1, 0);     cout << ans;   }   