#include<cstdio>
#include<cctype>
#include<cstring>
#include<set>
#include<algorithm>
using namespace std;
int main(){
set<int> st;
st.insert(3);
st.insert(5);
st.insert(2);
st.insert(3);
for(set<int>::iterator it = st.begin();it!=st.end();it++){
printf("%d ",*it);
}
return 0;
}
int main(){
set<int> st;
for(int i=0;i<3;i++){
st.insert(i);
}
set<int>::iterator it = st.find(1);
printf("%d\n",*it);
return 0;
}
#include<cstdio>
#include<cctype>
#include<cstring>
#include<vector>
#include<set>
#include<algorithm>
using namespace std;
set<int> martix[55];
void compare(int x,int y){
int len1 = martix[x].size();
int len2 = martix[y].size();
int common = 0;
int whole = len2;
for(set<int>::iterator it=martix[x].begin();it!=martix[x].end();it++){
if(martix[y].find(*it)!=martix[y].end()){
common++;
}else{
whole++;
}
}
double ratio = common*100.0/whole;
printf("%.1f%\n",ratio);
}
int main(){
int n;
scanf("%d",&n);
int num;
for(int i=1;i<n+1;i++){
scanf("%d",&num);
for(int j=0;j<num;j++){
int x;
scanf("%d",&x);
martix[i].insert(x);
}
}
int m;
scanf("%d",&m);
int a,b;
for(int i=0;i<m;i++){
scanf("%d %d",&a,&b);
compare(a,b);
}
return 0;
}