#include <stdio.h> #include <set> #include <algorithm> #include <iostream> using namespace std; const int si=51; set<int> st[si]; int main() { int N,K,M; cin>>N; for(int i=1;i<=N;i++) { cin>>M; int x; for(int j=0;j<M;j++) { cin>>x; st[i].insert(x); } } cin>>K; for(int i=0;i<K;i++) { set <int> U,I; int a,b; cin>>a>>b; set_union(st[a].begin(),st[a].end(),st[b].begin(),st[b].end(),inserter(U,U.begin())); set_intersection(st[a].begin(),st[a].end(),st[b].begin(),st[b].end(),inserter(I,I.begin())); printf("%.2f%%\n",I.size()*100.0/U.size()); } }
来源:https://www.cnblogs.com/Andre/p/12364118.html