#include<bits/stdc++.h>
using namespace std;
vector<vector<int>> adj;
signed main() {
int n, q; cin >> n >> q;
adj = vector<vector<int>>(n+1);
for(int i=1; i<n; i++) {
int a, b; cin >> a >> b;
adj[a].push_back(b);
adj[b].push_back(a);
}
while(q--) {
int d; cin >> d;
map<int, int> m;
for(int i=0; i<d; i++) {
int a; cin >> a;
m[a]++;
}
int leaves=n-1;
for(auto x : m) {
leaves--;
leaves+=x.second;
}
if(leaves%2 == 1) cout << "-1\n";
else cout << n+d-1 << '\n';
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |