解题思路:用数组储存朋友圈一共有哪些人(开始设为false),存朋友圈里ID时只需要注意一下那个没朋友的和朋友圈只有自己的(所以只考虑朋友圈人数大于1的)
代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
bool num[100010]={false};
int n,id,m,count=0;
cin>>n;
for(int i=1;i<=n;i++){
cin>>m;//每个朋友圈的人数
for(int j=1;j<=m;j++){
cin>>id;
if(m>=2)
num[id]=true;
}
}
int check,cid;
cin>>check;
for(int i=1;i<=check;i++){
cin>>cid;
if(num[cid]==false){
num[cid]=true;
if(count==0)
printf("%05d",cid);
else
printf(" %05d",cid);
count++;
}
}
if(count==0)
cout<<"No one is handsome";
}
运行结果:![](https://img-blog.csdnimg.cn/6797418ba88a4efcac477074e30b33eb.png)