2399 Save Your Privacy!
#include<stdio.h>
#include<bitset>
void search(int n){
std::bitset<102> ps[102],ms;
int m,p,ans,count=0;
for(int i=1;i<=n;i++){
ps[i].reset();
scanf("%d",&m);
for(int j=0;j<m;j++){
scanf("%d",&p);
ps[i].set(p);
}
}
scanf("%d",&m);
while(m--){
scanf("%d",&p);
ms.set(p);
}
for(int i=1;i<=n;i++){
int s=ps[i].count();
if(ps[i].count()==(ps[i]|ms).count()){
ans=i;
count++;
}
if(count>1)break;
}
if(count==1)printf("%d\n",ans);
else printf("-1\n");
}
int main(){
int n;
while(1){
scanf("%d",&n);
if(n==0)break;
search(n);
}
}
最終更新:2012年07月10日 10:46