东方博宜1760 - 整理抽屉
题目描述
期末考试即将来临,小T由于同时肩负了学习、竞赛、班团活动等多方面的任务,一直没有时间好好整理他的课桌抽屉,为了更好地复习,小T首先要把课桌抽屉里的书分类整理好。
小T的抽屉里堆着 N 本书,每本书的封面上都印有学科名称,学科名称用一个字符串表示,如语文学科的书封面上都印有“chinese”。现在,你的任务是帮助小T找出哪个学科的书最多?
输入
第一行包含一个自然数 N(0<N≤1000)表示抽屉中书的总数。
接下来 N 行每行包含一本书的学科名称,学科名称是一个长度不超过 15 的由小写英文字母组成的字符串。
输出
仅有一行包含一个字符串,表示最多的那种书的学科名称。
数据保证答案一定是唯一的。
样例
输入
5
english
chinese
physics
chinese
chinese
输出
chinese
说明
【样例解释】
小T课桌抽屉里共有 5 本书,其中有 3 本是语文学科的,英语学科和物理学科各有 1 本,所以最多的是语文学科的书,应输出“chinese”。
【数据范围】
30% 的数据满足:1≤N≤10,学科名称为长度不超过 2 的仅包含英文小写字母的字符串;
100% 的数据满足:1≤N≤1000,学科名称为长度不超过 15 的仅包含英文小写字母的字符串;
代码1
#include <iostream>
#include <map>
using namespace std;int main() {int n;cin >> n;map<string, int> subjectCounts;for (int i = 0; i < n; i++) {string subject;cin >> subject;subjectCounts[subject]++;}string maxSubject;int maxCount = 0;for (const auto& count : subjectCounts) {if (count.second > maxCount) {maxSubject = count.first;maxCount = count.second;}}cout << maxSubject << endl;return 0;
}
该代码首先读入输入的n,并创建一个map对象subjectCounts来存储每个学科及其出现次数。接下来,使用一个循环读取每本书的学科名称,使用subjectCounts[subject]++来增加对应学科的出现次数。
然后,我们通过遍历subjectCounts找到出现次数最多的学科名称和对应的出现次数。我们使用两个变量maxSubject和maxCount来记录出现次数最多的学科名称和出现次数。如果有多个学科出现次数最多,则我们仅保留字典码最大的学科名称。
最后,我们输出maxSubject,即出现次数最多的学科名称。
代码2
#include <iostream>
#include <unordered_map>
using namespace std;int main() {int n;cin >> n;unordered_map<string, int> subjectCounts;string maxSubject;int maxCount = 0;for (int i = 0; i < n; i++) {string subject;cin >> subject;subjectCounts[subject]++;if (subjectCounts[subject] > maxCount) {maxSubject = subject;maxCount = subjectCounts[subject];}}cout << maxSubject << endl;return 0;
}
该代码首先读入输入的n,并创建一个unordered_map对象subjectCounts来存储每个学科及其出现次数。我们还定义了两个变量maxSubject和maxCount来记录出现次数最多的学科名称和出现次数。
接下来,使用一个循环读取每本书的学科名称,并在subjectCounts中增加对应学科的出现次数。同时,我们通过比较当前学科的出现次数与maxCount来更新出现次数最多的学科名称和出现次数。
最后,我们输出maxSubject,即出现次数最多的学科名称。
这种方法使用了unordered_map来存储学科及其出现次数,使用一个循环遍历每本书,并实时更新出现次数最多的学科。它更加直观和通俗,不需要使用map和手动比较字典码大小。
相关文章:
东方博宜1760 - 整理抽屉
题目描述 期末考试即将来临,小T由于同时肩负了学习、竞赛、班团活动等多方面的任务,一直没有时间好好整理他的课桌抽屉,为了更好地复习,小T首先要把课桌抽屉里的书分类整理好。 小T的抽屉里堆着 N 本书,每本书的封面上…...
react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项目
文章目录 react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项目背景Vite 和 (Create React App) CRAVite?Vite 是否支持 TypeScript? 用Vite创建react项目参考 react快速开始(四)-之Vite 还是 (Create React App) CRA? 用Vite创建项…...
使用python绘制核密度估计图
使用python绘制核密度估计图 核密度估计图介绍效果代码 核密度估计图介绍 核密度估计(Kernel Density Estimation,KDE)是一种用于估计数据概率密度函数的非参数方法。与直方图不同,KDE 可以生成平滑的密度曲线,更好地…...
5. MySQL 运算符和函数
文章目录 【 1. 算术运算符 】【 2. 逻辑运算符 】2.1 逻辑非 (NOT 或者 !)2.2 逻辑与运算符 (AND 或者 &&)2.3 逻辑或 (OR 或者 ||)2.4 异或运算 (XOR) 【 3. 比较运算符 】3.1 等于 3.2 安全等于运算符 <>3.3 不等于运算符 (<> 或者 !)3.4 小于等于运算符…...
Linux学习之vi文本编辑器的使用
天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…...
【数据结构】链表与顺序表的比较
不同点: 顺序表和链表是两种常见的数据结构,他们的不同点在于存储方式和插入、删除操作、随机访问、cpu缓存利用率等方面。 一、存储方式不同: 顺序表: 顺序表的存储方式是顺序存储,在内存中申请一块连续的空间,通…...
dart 基本语法
//入口方法 main() 或 void main() //数据类型 原生数据类型 String int double bool null 注意:String 包函 ‘’ “” ‘’’ ‘’’ 三种形式复杂数据类型 list Set Map自定义数据类型 class inheritance动态数据类型 var 注:dart 是静态类型语言&a…...
【经验分享】嵌入式入坑经历(选段)
文章目录 你现在的工作中所用到的专业知识有哪些呢?为什么想转行了?后来为什么从事了嵌入式行业呢?你对嵌入式的兴趣是何时培养起来的?你是怎么平衡兴趣爱好和工作的关系的?平时做的事情对你现在的工作有哪些帮助?对于有志学习嵌入式开发的在校大学生…...
Docker面试整理-Docker与虚拟机的区别是什么?
Docker 容器和传统的虚拟机(VM)都是提供隔离的运行环境以部署和运行应用程序的技术,但它们在架构和性能上存在显著的不同。了解这些差异可以帮助你选择最适合特定需求的解决方案: 基础架构:虚拟机:每个虚拟机都包括完整的操作系统、应用程序、必需的库和二进制文件,运行在…...
Java:JDK8 GC中ParNew和CMS的问题说明
JDK8中常用如下的垃圾收集器,它们分别运用在年轻代和老年代: ParNew : 年轻代垃圾收集器,多线程,采用标记—复制算法。 CMS:老年代的收集器,全称(Concurrent Mark and Sweep)&#…...
学单片机前先学什么?
先学c语言和数字电路 这里默认你说的单片机是51单片机,通过你的问题,我猜你的单片机应该还没有入门,如果是入门的话,一般都是从51单片机开始的。刚好我有一些资料,是我根据网友给的问题精心整理了一份「单片机的资料从…...
数据可视化:Matplotlib 与 Seaborn
数据可视化是数据分析中至关重要的一部分,它能帮助我们直观地理解数据的分布、趋势和关系。Python 中,Matplotlib 和 Seaborn 是两个最常用的可视化库。本文将详细介绍如何使用 Matplotlib 和 Seaborn 进行数据可视化,包括基本图形、图形定制…...
【linux】自定义快捷命令/脚本
linux自定义快捷命令 场景自定义命令自定义脚本 场景 深度学习经常要切换到自己环境,conda activate mmagic,但是又不想每次重复打这么多字,想使用快捷命令直接切换。 自定义命令 使用别名(alias)或自定义脚本来创建…...
使用onnxruntime加载YOLOv8生成的onnx文件进行目标检测
在网上下载了60多幅包含西瓜和冬瓜的图像组成melon数据集,使用 LabelMe 工具进行标注,然后使用 labelme2yolov8 脚本将json文件转换成YOLOv8支持的.txt文件,并自动生成YOLOv8支持的目录结构,包括melon.yaml文件,其内容…...
QT 信号和槽 一对多关联示例,一个信号,多个槽函数响应,一个信号源如何绑定多个槽函数
在窗体里放置一个单行文本编辑控件(QLineEdit)、一个标签控件(QLabel)和一个文本浏览控件(QTextBrowser),在单行文 本编辑控件里的文本被编辑时,标签控件和文本浏览控件都会同步显示…...
C++ AVL树 详细讲解
目录 一、AVL树的概念 二、AVL树的实现 1.AVL树节点的定义 2.AVL树的插入 3.AVL树的旋转 4.AVL树的验证 三、AVL树的性能 四、完结撒❀ 一、AVL树的概念 二叉搜索树虽可以缩短查找的效率,但 如果数据有序或接近有序二叉搜索树将退化为单支树,查 …...
Faster R-CNN:端到端的目标检测网络
本文回顾了由微软研究人员开发的 Faster R-CNN 模型。Faster R-CNN 是一种用于物体检测的深度卷积网络,在用户看来,它是一个单一的、端到端的统一网络。该网络可以准确快速地预测不同物体的位置。为了真正理解 Faster R-CNN,我们还必须快速概…...
如何给 MySQL 表和列授予权限?(官方版)
目录 授予表级别权限 授予列级别权限 如何给MySQL表和列授予权限是MySQL数据操作中非常重要的步骤,也是企业级使用MySQL数据库的起步点,以下分别参照官方教程整理的MySQL数据库的权限操作。 以下的语句可以直接使用MySQL的命令行进行操作(如何…...
攻防世界testre做法(考点:base58)
在做这道题目之前,我们先来简单了解一下base64加密和base58加密,先来说一些预备知识,bit为1个位,即一个0或1,八个位组成一个字节,即八个二进制数。 base64编码原理:1,在使用base64加…...
计算机视觉与模式识别实验1-1 图像的直方图平衡
文章目录 🧡🧡实验流程🧡🧡1.读入图像‘rice.png’,在一个窗口中显示灰度级n64,128和256的图像直方图。2.调解图像灰度范围,观察变换后的图像及其直方图的变化。3.分别对图像‘pout.tif’和‘ti…...
如何用XUnity.AutoTranslator实现Unity游戏实时翻译?3大核心优势与5步落地指南
如何用XUnity.AutoTranslator实现Unity游戏实时翻译?3大核心优势与5步落地指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 你是否曾因语言障碍错失精彩的Unity游戏内容?XUnity…...
在国产麒麟V10系统上,用kubeadm一步步搭建3个master节点的k8s高可用集群(含haproxy+keepalived配置)
国产麒麟V10系统上构建高可用Kubernetes集群实战指南 在信息技术自主可控的大背景下,国产操作系统正逐步成为企业级基础设施的重要选择。本文将详细介绍如何在麒麟V10(Kylin V10)操作系统上,从零开始搭建一个包含3个Master节点的高…...
AI赋能无障碍:CYBER-VISION在智能导盲场景中的落地实践
AI赋能无障碍:CYBER-VISION在智能导盲场景中的落地实践 1. 引言:当科技照亮黑暗 想象一下,当你闭上眼睛走在繁忙的街道上,周围是川流不息的人群和车辆。对于全球2.85亿视障人士来说,这不仅是想象,而是每天…...
中兴光猫高级管理:5分钟掌握zteOnu命令行工具实用指南
中兴光猫高级管理:5分钟掌握zteOnu命令行工具实用指南 【免费下载链接】zteOnu 项目地址: https://gitcode.com/gh_mirrors/zt/zteOnu 中兴光猫作为家庭和企业网络的核心设备,其隐藏的高级功能往往被普通用户界面所限制。zteOnu是一个专门为中兴…...
构建非苹果硬件的macOS运行环境:Hackintosh长期维护方案
构建非苹果硬件的macOS运行环境:Hackintosh长期维护方案 【免费下载链接】Hackintosh Hackintosh long-term maintenance model EFI and installation tutorial 项目地址: https://gitcode.com/gh_mirrors/ha/Hackintosh 定位项目核心价值 Hackintosh项目作…...
16-Kotlin高阶特性-Lambda详解
Kotlin Lambda 表达式完全指南Lambda 表达式是 Kotlin 函数式编程的核心特性之一,它让代码更简洁、表达力更强。无论是集合操作、协程、还是 Jetpack Compose 中的 UI 回调,都大量使用 lambda。本文将系统讲解 Kotlin lambda 的语法形式、含义、各种语法…...
Dify工作流集成StructBERT:构建自定义文本智能处理应用
Dify工作流集成StructBERT:构建自定义文本智能处理应用 最近在做一个智能客服系统的升级项目,客户那边提了个挺实际的需求:每天有大量工单进来,希望系统能先自动判断一下问题类型,比如是“账号问题”、“支付故障”还…...
Kubernetes 自动扩缩容最佳实践
Kubernetes 自动扩缩容最佳实践 一、前言 哥们,别整那些花里胡哨的。Kubernetes 自动扩缩容是保证应用高可用和成本优化的关键,今天直接上硬货,教你如何配置和优化自动扩缩容。 二、扩缩容类型对比 类型适用场景优势劣势HPA水平扩缩容响应…...
Emu3.5 视觉 tokenizer 及其 decoder 的训练过程
下面我把 Emu3.5 视觉 tokenizer 及其 decoder 的训练完整过程,按照“论文明确写到的部分”“公开代码能对上的部分”“需要用开源近似路线复现的部分”三层重新整理。先给结论: 结论:Emu3.5 的视觉部分其实不是“一次性训练完一个模块”,而是至少分成两条链路: 第一条是…...
ADS差分传输线前仿真:从S参数模板到信号完整性快速评估
1. 差分传输线前仿真入门:为什么需要S参数模板? 刚入行那会儿,我最头疼的就是每次新项目都要从头搭建仿真环境。直到发现ADS里藏着现成的4端口S参数模板,工作效率直接翻倍。这就像做菜时有了预制高汤,不用再从熬骨头汤…...
