【C++】7-4 悄悄关注(PTA)

news/2024/11/7 22:41:56/

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

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

人数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<map>
#include<set>
using namespace std;struct like{string name;int num;
}wb[1000000];int main(){int n,m;map<string,int> mp;cin>>n;set<string> st;for(int i=0;i<n;i++){string a;cin>>a;mp[a]=1;}cin>>m;double s=0;for(int i=0;i<m;i++){cin >> wb[i].name >>wb[i].num;s+=wb[i].num;}s/=m;int flag=0;for(int i=0;i<m;i++){if(wb[i].num>s&&mp.count(wb[i].name)==false){flag=1;st.insert(wb[i].name);}}if(flag==0)cout<<"Bing Mei You";else{for(set<string>::iterator it=st.begin();it!=st.end();it++){cout<<*it<<endl;}}
}

这道题是我们第一周练习题的第四题,之前从头开始做的时候就遇见他了,感觉有点难就跳过去了,现在把别的题做完之后回头再来看依然感觉有点难。本来我是用传统的方法就是设立好多个字符数组然后遍历排序等等等特别麻烦。好不容易写完之后运行结果不对,怎么改也不知道哪里出了问题,于是上网搜索答案,发现几乎所有答案都是使用map函数和set来解答的,但是我却一点也不会,我们第一周的内容就是stl的入门,但是我却一点也不会,这属实有点尴尬啊。
于是我就照搬参考别的大神的代码,就是改了几个变量名字
这是参考链接:https://blog.csdn.net/ATCG7/article/details/106939378
在这里插入图片描述


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

相关文章

PTA 7-11 悄悄关注

** PTA 7-11 悄悄关注 ** 新浪微博上有个“悄悄关注”&#xff0c;一个用户悄悄关注的人&#xff0c;不出现在这个用户的关注列表上&#xff0c;但系统会推送其悄悄关注的人发表的微博给该用户。现在我们来做一回网络侦探&#xff0c;根据某人的关注列表和其对其他用户的点赞…

PAT--L2-019 悄悄关注

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

【话题研究】重塑活力:顺应消费需求变化,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…