PAT基础级-钻石段位样卷2-7-6 帅到没朋友 (20 分)

当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友。本题就要求你找出那些帅到没有朋友的人。

输入格式:

输入第一行给出一个正整数N(≤),是已知朋友圈的个数;随后N行,每行首先给出一个正整数K(≤),为朋友圈中的人数,然后列出一个朋友圈内的所有人——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔;之后给出一个正整数M(≤),为待查询的人数;随后一行中列出M个待查询的ID,以空格分隔。

注意:没有朋友的人可以是根本没安装“朋友圈”,也可以是只有自己一个人在朋友圈的人。虽然有个别自恋狂会自己把自己反复加进朋友圈,但题目保证所有K超过1的朋友圈里都至少有2个不同的人。

输出格式:

按输入的顺序输出那些帅到没朋友的人。ID间用1个空格分隔,行的首尾不得有多余空格。如果没有人太帅,则输出No one is handsome

注意:同一个人可以被查询多次,但只输出一次。

输入样例1:

3
3 11111 22222 55555
2 33333 44444
4 55555 66666 99999 77777
8
55555 44444 10000 88888 22222 11111 23333 88888

输出样例1:

10000 88888 23333

输入样例2:

3
3 11111 22222 55555
2 33333 44444
4 55555 66666 99999 77777
4
55555 44444 22222 11111

输出样例2:

No one is handsome
#include <iostream>
#include <map>
#include <vector>
using namespace std;
int main()
{
    int N,M,T;string tmp;
    cin>>N;
    map<string,bool> m;
    while(N--){
        cin>>M;
        if(M==1) cin>>tmp;
        else
            while(M--){
                cin>>tmp;
                m[tmp]=true;
            }
    }
    cin>>T;vector<string> res;
    map<string,bool> excludeRepeat;
    while(T--){
        cin>>tmp;
        if(!m[tmp]&&!excludeRepeat[tmp]) res.push_back(tmp);
        excludeRepeat[tmp]=true;
    }
    if(res.size()==0) cout<<"No one is handsome";
    else
        for(int i=0;i<res.size();i++)
            if(i!=res.size()-1) cout<<res[i]<<" ";
            else cout<<res[i];
    system("pause");
    return 0;
}

原文地址:https://www.cnblogs.com/littlepage/p/11966811.html

时间: 2024-10-31 16:42:17

PAT基础级-钻石段位样卷2-7-6 帅到没朋友 (20 分)的相关文章

PAT基础级-钻石段位样卷2-7-4 6翻了 (15 分)

“666”是一种网络用语,大概是表示某人很厉害.我们很佩服的意思.最近又衍生出另一个数字“9”,意思是“6翻了”,实在太厉害的意思.如果你以为这就是厉害的最高境界,那就错啦 —— 目前的最高境界是数字“27”,因为这是 3 个 “9”! 本题就请你编写程序,将那些过时的.只会用一连串“6666……6”表达仰慕的句子,翻译成最新的高级表达. 输入格式: 输入在一行中给出一句话,即一个非空字符串,由不超过 1000 个英文字母.数字和空格组成,以回车结束. 输出格式: 从左到右扫描输入的句子:如果句

PAT基础级-钻石段位样卷2-7-5 福到了 (15 分)

“福”字倒着贴,寓意“福到”.不论到底算不算民俗,本题且请你编写程序,把各种汉字倒过来输出.这里要处理的每个汉字是由一个 N × N 的网格组成的,网格中的元素或者为字符 @ 或者为空格.而倒过来的汉字所用的字符由裁判指定. 输入格式: 输入在第一行中给出倒过来的汉字所用的字符.以及网格的规模 N (不超过100的正整数),其间以 1 个空格分隔:随后 N 行,每行给出 N 个字符,或者为 @ 或者为空格. 输出格式: 输出倒置的网格,如样例所示.但是,如果这个字正过来倒过去是一样的,就先输出b

PAT基础级-钻石段位样卷2-7-7 危险品装箱 (25 分)

集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里.比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸. 本题给定一张不相容物品的清单,需要你检查每一张集装箱货品清单,判断它们是否能装在同一只箱子里. 输入格式: 输入第一行给出两个正整数:N (≤) 是成对的不相容物品的对数:M (≤) 是集装箱货品清单的单数. 随后数据分两大块给出.第一块有 N 行,每行给出一对不相容的物品.第二块有 M 行,每行给出一箱货物的清单,格式如下: K G[1] G[2] ... G[K] 其

PAT基础级-钻石段位样卷2-7-2 吃鱼还是吃肉 (10 分)

  国家给出了 8 岁男宝宝的标准身高为 130 厘米.标准体重为 27 公斤:8 岁女宝宝的标准身高为 129 厘米.标准体重为 25 公斤. 现在你要根据小宝宝的身高体重,给出补充营养的建议. 输入格式: 输入在第一行给出一个不超过 10 的正整数 N,随后 N 行,每行给出一位宝宝的身体数据: 性别 身高 体重 其中性别是 1 表示男生,0 表示女生.身高和体重都是不超过 200 的正整数. 输出格式: 对于每一位宝宝,在一行中给出你的建议: 如果太矮了,输出:duo chi yu!(多吃

PAT基础级-钻石段位样卷2-7-3 大笨钟 (10 分)

微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉.不过由于笨钟自己作息也不是很规律,所以敲钟并不定时.一般敲钟的点数是根据敲钟时间而定的,如果正好在某个整点敲,那么“当”数就等于那个整点数:如果过了整点,就敲下一个整点数.另外,虽然一天有24小时,钟却是只在后半天敲1~12下.例如在23:00敲钟,就是“当当当当当当当当当当当”,而到了23:01就会是“当当当当当当当当当当当当”.在午夜00:00到中午12:00期间(端点时间包括在内),笨钟是不敲的. 下面就请你写个程序,根

PAT - 基础 - 最大公约数和最小公倍数

题目: 本题要求两个给定正整数的最大公约数和最小公倍数. 输入格式: 输入在一行中给出2个正整数M和N(<=1000). 输出格式: 在一行中顺序输出M和N的最大公约数和最小公倍数,两数字间以1空格分隔. 输入样例: 511 292 输出样例: 73 2044 两种方法1.辗转相除法求最大公约数流程如下: 算法 #include<stdio.h> #include<stdlib.h> int main() { int M,N; scanf("%d%d",&

java 网络编程(二)----UDP基础级的示例

下面介绍UDP基础级的代码示例: 首先了解创建UDP传输的发送端的思路: 1.创建UDP的Socket服务.2.将要发送的数据封装到数据包中.3.通过UDP的socket服务将数据包发送出去.4.关闭socket服务. 而接收端的思想如下: 1.创建UDP的Socket服务.需要明确一个端口号.2.创建数据包,用于存储接收到的数据,方便用数据包对象的方法解析各种数据.3.使用socket服务的recive方法将接收到的数据存储到数据包中.4.通过数据包中的方法解析数据包中的数据.5.关闭资源.

Git基础级介绍

这篇随笔是在学习了廖雪峰老师的git教程之后写的总结,要看详细的基础级git介绍可以去http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 如果想看更加详细的git介绍,可以去我们的团队博客http://www.cnblogs.com/buaase/p/5066288.html 如果还想看更更加详细的git介绍,可以去百度云盘下载https://pan.baidu.com/s/1nvq

PAT 乙级 1074 宇宙无敌加法器 (20 分)

1074 宇宙无敌加法器 (20 分) 地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的.而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为"PAT数".每个 PAT 星人都必须熟记各位数字的进制表,例如"--0527"就表示最低位是 7 进制数.第 2 位是 2 进制数.第 3 位是 5 进制数.第 4 位是 10 进制数,等等.每一位的进制 d 或者是 0(表示十进制).或者是 [2,9] 区间内的整数.理论上这个进制