#include <cmath> #include <cstdio> #include <vector> #include <iostream> #include <algorithm> using namespace std; int n,m,q,a[310][310],i,j,b[310],t,x,y; bool find(int d,int x) { int l=1,r=a[d][0]; while (l<r) { int m=(l+r)/2; if (a[d][m]==x) return 1; if (a[d][m]<x) l=m+1; else r=m; } return a[d][l]==x; } int main() { cin>>n; for (i=1;i<=n;i++) { cin>>a[i][0]; for (j=1;j<=a[i][0];j++) scanf("%d",&a[i][j]); sort(a[i]+1,a[i]+a[i][0]+1); } cin>>q; for (;q;q--) { cin>>x>>y; for (i=1;i<=y;i++) scanf("%d",b+i); t=0; for (i=1;i<=n;i++) { m=0; for (j=1;j<=y;j++) if (find(i,b[j])) m++; if (x==1 && m==y) t++; else if (x==2 && m>0) t++; else if (x==3 && m>0 && m<y) t++; } printf("%d\n",t); } return 0; }