#include<stdio.h>
#include<math.h>
int main()
{
int arr[100000] = { 0 };
//先定义一个较大的数组,并将其中的数值都初始化定义为0
int n=0,k=0;
scanf("%d", &n);
while (n != 0)
{
int m=0;
n--;
scanf("%d", &m);
for (int i = 0; i < m; i++)
{
scanf("%d", &k);
arr[k]++;
}
//在这个地方使用统排序,如果这个数据进入之后,就以这个数为下标,给其对应的数组值加一
}
int ser=0;
int num=0;
int h=0;
scanf("%d", &ser);
//ser表示为其所要搜索的次数
while (ser != 0)
{
ser--;
scanf("%d", &num);
if (arr[num] == 0)
//如果以这个查询的id所对应的数组值为零,则证明在上面录入程序的时候,没有关于这个数
//字的录入,则证明ta帅到没朋友
{
printf("%d", num);
arr[num] = -1;
//将其对应的值修改为-1,如果再次查询这个人,就会直接跳过,防止重复输出
if (ser != 1)
{
printf(" ");
}
//以ser的值来控制是否要输出空格
h++;
//以h的值控制是否要输出语句no one is handsome,如果成功进入此判断语句,就会修改h的
//值,使其不为0
}
if (arr[num] == -1);
{
continue;
}
}
if (h==0)
{
printf("No one is handsome");
}
}
#include<stdio.h>#include<math.h>int main(){ int arr[100000] = { 0 };//先定义一个较大的数组,并将其中的数值都初始化定义为0 int n=0,k=0; scanf("%d", &n); while (n != 0) { int m=0; n--; scanf("%d", &m); for (int i = 0; i < m; i++) { scan.