注意是不同的数!
#include <bits/stdc++.h>
using namespace std;
vector<set<int>> v;
int main(){
int n, k, x, num;
scanf ("%d", &n);
v.resize(n + 1);
for (int i = 1; i <= n; i++){
scanf ("%d", &x);
for (int j = 0; j < x; j++){
scanf ("%d", &num);
v[i].insert(num);
}
}
scanf ("%d", &n);
for (int i = 0; i < n; i++){
int a, b, cntc = 0, cntt, va, vb;
scanf ("%d %d", &a, &b);
cntt = v[b].size();
for (auto it = v[a].begin(); it != v[a].end(); it++){
if (v[b].find(*it) != v[b].end()) cntc++;
else cntt++;
}
printf ("%.1f%\n", (cntc * 1.0) / (cntt * 1.0) * 100);
}
}