东方博宜1180 - 数字出现次数

问题描述
有 50 个数( 0∼19),求这 50个数中相同数字出现的最多次数为几次?

输入
50 个数字。

输出
1 个数字(即相同数字出现的最多次数)。

样例
输入
1 10 2 0 15 8 12 7 0 3 15 0 15 18 16 7 17 16 9 1 19 16 12 17 12 4 3 11 1 14 2 11 14 6 11 4 6 4 11 13 18 7 0 3 2 3 18 19 2 16
输出
4

C++

#include <iostream>
#include <vector>
#include <unordered_map>
using namespace std;int getMaxOccurrences(vector<int>& nums) {unordered_map<int, int> countMap;for (int num : nums) {countMap[num]++;}int maxOccurrences = 0;for (auto it = countMap.begin(); it != countMap.end(); ++it) {if (it->second > maxOccurrences) {maxOccurrences = it->second;}}return maxOccurrences;
}int main() {vector<int> nums(50);for (int i = 0; i < 50; i++) {cin >> nums[i];}int maxOccurrences = getMaxOccurrences(nums);cout << maxOccurrences << endl;return 0;
}

当我们需要求解一个数组中相同数字出现的最多次数时,我们可以按照以下步骤进行计算:

  1. 首先,我们读取输入的 50 个数字,并将它们存储在一个整数向量 nums 中。
  2. 我们使用一个函数 getMaxOccurrences 来计算相同数字出现的最多次数。函数接受一个整数向量 nums 作为参数,并返回一个整数表示相同数字出现的最多次数。
  3. 在 getMaxOccurrences 函数中,我们使用一个无序映射 countMap 来存储每个数字出现的次数。
  4. 使用一个循环,遍历数组 nums 中的每个数字。对于每个数字,我们在 countMap 中查找对应的键值对,如果找到,则将其值加一;否则,将其插入到 countMap 中,并将值初始化为 1。
  5. 创建一个变量 maxOccurrences,用于存储相同数字出现的最多次数的初始值为 0。
  6. 使用另一个循环,遍历 countMap 中的每个键值对。对于每个键值对,我们将其值与 maxOccurrences 进行比较,如果大于 maxOccurrences,则将其更新为新的最大值。
  7. 循环结束后,maxOccurrences 中存储的就是相同数字出现的最多次数。
  8. 在 main 函数中,我们调用 getMaxOccurrences 函数,并将计算得到的相同数字出现的最多次数存储在 maxOccurrences 变量中。
  9. 最后,将 maxOccurrences 输出。

通过以上的步骤,我们可以计算出数组中相同数字出现的最多次数,并将结果输出。

希望以上解释对您有帮助。如果您还有其他问题,请随时提问。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/456701.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

npm、yarn、pnpm的workspaces使用

示例项目中总会遇到npm的packages中出现的workspaces键值对&#xff0c;自己的项目中没接触过这个东西&#xff0c;到底是什么&#xff1f;怎么用的&#xff1f;简单研究记录一下&#xff1a; abbrev是一个npm包&#xff0c;提供缩写展开功能。‌ 当你定义一个缩写后&#xff0…

设计一个html+css+js的注册页,对于注册信息进行合法性检测

综合使用HTML、JavaScript和CSS进行注册页面设计&#xff0c;实现以下若干功能&#xff1a; 注意整个页面的色调和美观使用FramesetTable布局&#xff08;div也可&#xff09;对用户ID和用户名、口令不符合条件及时判断对口令不一致进行及时判断&#xff08;34的及时判断&#…

使用 Pake 一键打包网页为桌面应用 / 客户端

项目 项目&#xff1a;https://github.com/tw93/Pake/ 免费ICO图片&#xff1a;https://icon-icons.com/zh/ 设置环境 以下教程仅针对windows系统适用 请确保您的 Node.js 版本为 18 或更高版本 文档&#xff1a;https://v1.tauri.app/zh-cn/v1/guides/getting-started/prerequ…

Web3的核心概念:去中心化如何改变互联网

Web3&#xff0c;作为互联网的下一代技术架构&#xff0c;正在重新定义用户与数据、平台之间的关系。与以往的Web2.0时代相比&#xff0c;Web3的核心在于去中心化的理念&#xff0c;旨在通过区块链等技术实现更高的透明度、安全性和用户控制权。 1. 数据的掌控与隐私保护 在W…

分页列表缓存

写这篇文章&#xff0c;我们聊聊分页列表缓存&#xff0c;希望能帮助大家提升缓存技术认知。 1 直接缓存分页列表结果 这是最简单易懂的方案&#xff0c;我们按照不同的分页条件查询出结果后&#xff0c;直接缓存分页结果 。 伪代码如下&#xff1a; public List<Product&…

基于LSTM-Transformer混合模型实现股票价格多变量时序预测(PyTorch版)

前言 系列专栏:【深度学习&#xff1a;算法项目实战】✨︎ 涉及医疗健康、财经金融、商业零售、食品饮料、运动健身、交通运输、环境科学、社交媒体以及文本和图像处理等诸多领域&#xff0c;讨论了各种复杂的深度神经网络思想&#xff0c;如卷积神经网络、循环神经网络、生成对…

修改huggingface的缓存目录以及镜像源

执行以下语句查看当前配置 huggingface-cli env默认输出应该如下 (py39-transformers) PS D:\py_project\transformers_demo> huggingface-cli envCopy-and-paste the text below in your GitHub issue.- huggingface_hub version: 0.26.1 - Platform: Windows-10-10.0.22…

09_实现reactive之代理 Set 和 Map

目录 创建代理建立响应式联系避免污染原始数据处理 forEachfor...ofvalues 与 keys 方法 Set 和 Map 都有特定的属性和方法来操作自身&#xff0c;因此需要单独处理。 创建代理 我们来看一段案例代码&#xff0c;体验一下和它们的独特之处&#xff0c;如下&#xff1a; const…

第二代 GPT-SoVITS V2:解锁语音克隆与合成的无限可能

在 AI 技术蓬勃发展的今天&#xff0c;第二代 GPT-SoVITS V2 如一颗璀璨的明星闪耀登场&#xff0c;为语音处理领域带来了前所未有的变革。它是一款集先进技术与强大功能于一身的声音克隆与语音合成工具&#xff0c;由 RVC 变声器创始人 “花儿不哭” 与 AI 音色转换技术 Sovit…

使用 pydub 的 AudioSegment 获取音频时长 - python 实现

通过使用 pydub 的 AudioSegment 获取音频时长&#xff0c;音频常用格式如 m4a,wav等。 安装 python 库&#xff1a; pip install pydub 获取 m4a 格式的音频时长代码如下&#xff0c;代码如下&#xff1a; #-*-coding:utf-8-*- # date:2024-10 # Author: DataBall - XIAN #…

mac nwjs程序签名公证(其他mac程序也一样适用)

为什么需要公证 mac os14.5之后的系统&#xff0c;如果不对应用进行公证&#xff0c;安装&#xff0c;打开&#xff0c;权限使用上都会存在问题&#xff0c;而且有些问题你强制开启&#xff08;sudo spctl --master-disable&#xff09;使用后可能会有另外的问题&#xff0c; …

JSON Web Token (JWT)的简单介绍、验证过程及令牌刷新思路

目录 一、JWT 1、什么是Jwt 2、为什么要使用Jwt 3、应用场景 4.Jwt的组成 4.1、Header 4.2、Payload 4.3、signature 二、Jwt验证过程 1、生成Jwt令牌 2、解析旧的Jwt 3、复制Jwt 4、Jwt有效时间测试 三、Jwt令牌刷新思路 1、配置JwtFilter过滤器 2、登录生成Jwt令…

解决Redis缓存穿透(缓存空对象、布隆过滤器)

文章目录 背景代码实现前置实体类常量类工具类结果返回类控制层 缓存空对象布隆过滤器结合两种方法 背景 缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在&#xff0c;这样缓存永远不会生效&#xff0c;这些请求都会打到数据库 常见的解决方案有两种&#xff0c;分别…

2024年10月24日第一部分AOP编程和自信

测试 Spring通知&#xff08;前置通知&#xff0c;后置通知&#xff0c;返回通知&#xff0c;异常通知&#xff0c;环绕通知&#xff09;_前置通知后置通知环绕通知-CSDN博客 一、前置通知 --前置通知 : 在方法执行之前执行的通知 --前置通知使用 Before 注解 , 并将切入点表…

【2024CANN训练营第二季】使用华为云体验AscendC_Sample仓算子运行

环境介绍 NPU&#xff1a;Ascend910B2 环境准备 创建Notebook 华为云选择&#xff1a;【控制台】-【ModelArts】 ModelArts主页选择【开发生产】-【开发空间】-【Notebook】 页面右上角选择【创建Notebook】 选择资源 主要参数 规格&#xff1a;Ascend: 1*ascend-snt…

VS code部署Vue项目Demo

在之前已经在IDEA中部署过vue项目demo。本次在上次基础上进行。 IDEA中Vue的安装和使用【window10】_idea安装vue-CSDN博客 步骤一、安装VSCode 双击安装即可 步骤二&#xff1a;检查npm是否安装 步骤三&#xff1a;检查vue是否安装 &#xff08;vue create 项目名 只要在v…

【AscendC算子开发】笔记1 算子开发哲学

重看这门课&#xff0c;有很多内容的认识更深了&#xff0c;做一些记录。 为什么不能将网络节点融合 这个问题关联到另一个问题&#xff1a;为什么我们需要激活函数&#xff1f; 使用线性的神经元堆叠得到的方程最后也是线性方程&#xff0c;无法表征非线性的信息&#xff0c…

微信网页授权回调地址放多个参数的方法

https://open.weixin.qq.com/connect/oauth2/authorize?appidAPPID&redirect_uriREDIRECT_URI&response_typecode&scopeSCOPE&stateSTATE#wechat_redirect 跳转后地址 redirect_uri/?codeCODE&stateSTATE。 redirect_uri如果不进行urlencode编码, 跳转后…

C++20中头文件syncstream的使用

<syncstream>是C20中新增加的头文件&#xff0c;提供了对同步输出流的支持&#xff0c;即在多个线程中可安全地进行输出操作&#xff0c;此头文件是Input/Output库的一部分。包括&#xff1a; 1.std::basic_syncbuf&#xff1a;是std::basic_streambuf的包装器(wrapper)&…

《在1688的数字海洋中,如何用API网罗一家店铺的所有商品?》

想象一下&#xff0c;你是一位船长&#xff0c;航行在1688这个电商的数字海洋上。你的任务是探索一家神秘的店铺岛屿&#xff0c;并且用你的API魔法网&#xff0c;网罗岛上所有的商品宝藏。不用担心&#xff0c;即使你不是海贼王&#xff0c;有了代码的力量&#xff0c;你也能成…