PAT--L2-019 悄悄关注

news/2024/11/7 22:35:30/

题目描述:
新浪微博上有个“悄悄关注”,一个用户悄悄关注的人,不出现在这个用户的关注列表上,但系统会推送其悄悄关注的人发表的微博给该用户。现在我们来做一回网络侦探,根据某人的关注列表和其对其他用户的点赞情况,扒出有可能被其悄悄关注的人。

输入格式:
输入首先在第一行给出某用户的关注列表,格式如下:

人数N 用户1 用户2 …… 用户N
其中N是不超过5000的正整数,每个用户i(i=1, …, N)是被其关注的用户的ID,是长度为4位的由数字和英文字母组成的字符串,各项间以空格分隔。

之后给出该用户点赞的信息:首先给出一个不超过10000的正整数M,随后M行,每行给出一个被其点赞的用户ID和对该用户的点赞次数(不超过1000),以空格分隔。注意:用户ID是一个用户的唯一身份标识。题目保证在关注列表中没有重复用户,在点赞信息中也没有重复用户。

输出格式:
我们认为被该用户点赞次数大于其点赞平均数、且不在其关注列表上的人,很可能是其悄悄关注的人。根据这个假设,请你按用户ID字母序的升序输出可能是其悄悄关注的人,每行1个ID。如果其实并没有这样的人,则输出“Bing Mei You”。

输入样例1:
10 GAO3 Magi Zha1 Sen1 Quan FaMK LSum Eins FatM LLao
8
Magi 50
Pota 30
LLao 3
Ammy 48
Dave 15
GAO3 31
Zoro 1
Cath 60
输出样例1:
Ammy
Cath
Pota
输入样例2:
11 GAO3 Magi Zha1 Sen1 Quan FaMK LSum Eins FatM LLao Pota
7
Magi 50
Pota 30
LLao 48
Ammy 3
Dave 15
GAO3 31
Zoro 29
输出样例2:
Bing Mei You

代码如下:

#include<iostream>
#include<set>
#include<map>
using namespace std;
int main()
{int n,m,k,sum=0,flag=0;cin>>n;string s2;set<string>s;for(int i=0;i<n;i++){cin>>s2;s.insert(s2);}cin>>m;map<string,int>m2;for(int i=0;i<m;i++){cin>>s2>>k;sum+=k;m2[s2]=k;}for(auto it=m2.begin();it!=m2.end();it++){if((it->second)>sum/m&&s.find(it->first)==s.end()){flag=1;cout<<it->first<<endl;}}if(!flag) cout<<"Bing Mei You";return 0;
}

来总结一下:
1)本来打算用string 类来直接读取一行,后来最后一个测试点一直过不去,应该是数据量太大了,string没有存下。
2)既然是查找有没有,就可以用set容器,把所有的关注的人都存进来,最后再查找有没有它。
3)注意!!!既然是以名字为升序的话,必须要定义为map<string,int>m2;


http://www.ppmy.cn/news/553461.html

相关文章

【话题研究】重塑活力:顺应消费需求变化,PC市场需创新、技术驱动和营销策略更优解

话题研究&#xff1a;大众还需要PC吗&#xff1f;PC市场如何走出寒冬&#xff1f; 1️⃣ PC市场进入寒冬的深层原因2️⃣ PC仍具有独特的优势和不可替代性3️⃣ 创新、定制化和用户体验4️⃣ AI、VR时代带来的新出路 市场调研机构 Canalys数据显示&#xff0c;今年一季度&#…

创建型模式之抽象工厂模式

抽象工厂模式&#xff08;Abstract Factory Pattern&#xff09; 抽象工厂模式&#xff08;Abstract Factory Pattern&#xff09;是一种创建型设计模式&#xff0c;用于提供一个接口&#xff0c;用于创建相关或依赖对象的家族&#xff0c;而不需要指定具体实现类。 它通过将产…

【头歌-Python】Python第六章作业(初级)

第1关&#xff1a;列表的属性与方法 任务描述 初始化一个空列表&#xff0c;输入一个正整数 n。 接下来&#xff0c;你将被要求输入 n 个指令&#xff0c;每得到一个指令后&#xff0c;根据指令的字符串进行对应的功能操作。 指令形式及对应功能如下&#xff1a; insert i e…

计算机语言发展史

【1】第一代&#xff1a;机器语言&#xff08;相当于人类的原始阶段&#xff09; 机器语言是机器指令的集合&#xff0c;机器指令展开来讲就是一台机器可以正确执行的命令。电子计算机的机器指令是一列二进制数字。计算机将之转变为一列高低电平&#xff0c;以使计算机的电子器…

《数字摄影与摄像》学习笔记——摄影课理论基础

1、数码相机 ——如何使用一部相机 数码相机的种类有哪些&#xff1f; 一般上分为卡片机&#xff0c;单反相机和微单相机 。卡片式相机就是一般所说的傻瓜数码相机&#xff0c;它的主要特点就是不能更换镜头&#xff0c;同时卡片机一般十分的小巧&#xff0c;有些只有卡片手机…

Si24R2F+2.4GHz ISM 频段低功耗无线集成嵌入式发射基带无线发射芯片

Si24R2F在原有Si24R2F的基础上&#xff1a;优化了射频性能、增加NTC测温、增加自动唤醒间隔、优化了蓝牙性能。在固定资产管理、冷链物流和牛羊畜牧业标签市场更具竞争力。 在原有SI24R2E做白卡/校徽的群体&#xff0c;在新的卡片机应用&#xff0c;更加推荐用SI24R2F&#xf…

【白瓢党怎样避免沦为氪金党?细数游戏中的氪金套路】

87年的我并不是一个游戏爱好者&#xff0c;我成功的躲过了CS、传奇、魔兽、也没有被王者、英雄、吃鸡打开我的钱包&#xff0c;却在一款手游上不知不觉的充值了10000多&#xff01;到一万的时候&#xff0c;我突然间冷静了&#xff0c;我不能在在上面沦陷了&#xff0c;冷静下来…

A卡是什么

显卡我们常说的有两种&#xff0c;A 卡和 N 卡&#xff0c;所谓的 A 卡就是由厂商 AMD 做制造的显卡&#xff1a;A 卡其实是 ATI 显卡的简称&#xff0c;ATI 自从被 AMD 收购之后&#xff0c;也被称为 AMD 显卡&#xff0c;A 卡的 A 其实就是 AMD 的开头字母&#xff0c;是 AMD…