华为OD机试 - 最多颜色的车辆 - 数据结构map(Java 2022Q4 100分)

在这里插入图片描述

目录

    • 专栏导读
    • 一、题目描述
    • 二、输入描述
    • 三、输出描述
    • 四、解题思路
      • 1、核心思想
      • 2、题做多了,你就会发现,这道题属于送分题,为什么这样说?
      • 3、具体解题思路:
    • 五、Java算法源码
    • 六、效果展示
      • 1、输入
      • 2、输出

华为OD机试 2023B卷题库疯狂收录中,刷题点这里

专栏导读

本专栏收录于《华为OD机试(JAVA)真题(A卷+B卷)》。

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

一、题目描述

在一个狭小的路口,每秒只能通过一辆车,假设车辆的颜色只有 3 种,找出 N 秒内经过的最多颜色的车辆数量。

三种颜色编号为0 ,1 ,2

二、输入描述

第一行输入的是通过的车辆颜色信息[0,1,1,2] ,代表4 秒钟通过的车辆颜色分别是 0 , 1 , 1 , 2

第二行输入的是统计时间窗,整型,单位为秒

三、输出描述

输出指定时间窗内经过的最多颜色的车辆数量。

四、解题思路

1、核心思想

输出指定时间窗内经过的最多颜色的车辆数量。

题读三遍,其义自见。

在一个狭小的路口,每秒只能通过一辆车,假设车辆的颜色只有 3 种,找出 N 秒内经过的最多颜色的车辆数量。

比如输入

0 1 2 2 1 0
4

4秒内经过的最多颜色的车辆数量。

4秒内经过了那几辆车:0 1 2 2

颜色最多的车辆是2,数量是2,即输出2。

2、题做多了,你就会发现,这道题属于送分题,为什么这样说?

  1. 题意简单
  2. 一看题目就秒懂,通过map实现即可

有的人可能想到滑动窗口+双指针,不麻烦吗?通过考试,拿满分才是王道。

算法嘛,能用简单的,绝不用复杂的。

3、具体解题思路:

  1. 遍历第一行输入的通过的车辆颜色信息;
  2. 遍历的长度是统计时间窗;
  3. 定义一个map,(key:每辆车的颜色信息,value:统计时间窗内出现的次数)。
  4. 获取map中值最大的值即输出结果。

五、Java算法源码

package com.guor.od;import java.util.*;public class OdTest02 {/*** 最多颜色的车辆* 输出指定时间窗内经过的最多颜色的车辆数量。*/public static void main(String[] args) {Scanner scanner = new Scanner(System.in);// 通过的车辆颜色信息[0,1,1,2] 代表4秒钟通过的车辆颜色分别是 0,1,1,2String[] arr = scanner.nextLine().split(" ");// 统计时间窗int number = Integer.valueOf(scanner.nextLine());/*** key:每辆车的颜色信息* value:统计时间窗内出现的次数*/Map<String, Integer> map = new HashMap<String, Integer>();for (int i = 0; i < number; i++) {if (map.containsKey(arr[i])) {map.put(arr[i], map.get(arr[i]) + 1);} else {map.put(arr[i], 1);}}System.out.println(map);// 获取map中的最大值Integer max = 0;for (Map.Entry<String, Integer> entry : map.entrySet()) {if (entry.getValue() > max) {max = entry.getValue();}}// 觉得没意思,想秀一下演技,也可以这样,不过不建议这样写max = sortByValue(map);System.out.println(max);}/*** 获取map中的最大值*/public static Integer sortByValue(Map<String, Integer> map) {List<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(map.entrySet());Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {// 降序排列return (o2.getValue() - o1.getValue());}});System.out.println(list);return list.get(0).getValue();}
}

六、效果展示

1、输入

0 1 2 2 1 0
5

2、输出

2

在这里插入图片描述


🏆下一篇:华为OD机试 - 荒岛求生 - 栈Stack(Java 2023 B卷 100分)

🏆本文收录于,华为OD机试(JAVA)真题(A卷+B卷)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

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

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

相关文章

Linux:Command ‘vim‘ not found, but can be installed with:

这个错误提示表明您的系统中没有安装 vim 编辑器。Vim 是一款常用的文本编辑器&#xff0c;许多 Linux 系统默认提供了它&#xff0c;但有些系统可能需要单独安装。 要解决这个问题&#xff0c;您可以根据您使用的操作系统执行以下步骤&#xff1a; 对于 Ubuntu 或 Debian 系…

C++ 模板

模板&#xff1a; 模板&#xff0c;即数据是灵魂&#xff0c;其余为肉身&#xff0c;正所谓有趣的灵魂万里挑一&#xff0c;所以想要模板变得完美&#xff0c;关键在于数据&#xff1b;其余不过是抄作业的框架。 模板函数&#xff1a; 模板函数可以自动推导出你传给他的数据类型…

便捷高效的电能管理:利用PLC远程控制网关实时监控配电箱

配电箱是工业生产过程中必不可少的设备&#xff0c;其中的PLC&#xff08;可编程逻辑控制器&#xff09;是实现自动化控制的重要组成部分。为了实时监控配电箱的数据&#xff0c;并进行远程调试上下载与管理控制&#xff0c;我们可以使用PLC数据采集与远程控制网关。 PLC数据采…

2023年全国大学生数学建模B题

多波束测线问题 1.问题提出 单波束测深是利用声波在水中的传播特性来测量水体深度的技术。声波在均匀介质中作匀 速直线传播&#xff0c;在不同界面上产生反射&#xff0c;利用这一原理&#xff0c;从测量船换能器垂直向海底发射声波信号&#xff0c;并记录从声波发射到信号接…

QT Object定时器使用

#ifndef WIDGET_H #define WIDGET_H#include <QWidget>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);// 需要对timerEvent函数进行重写virtual void timerEvent…

CVE-2023-3836:大华智慧园区综合管理平台任意文件上传漏洞复现

文章目录 CVE-2023-3836&#xff1a;大华智慧园区综合管理平台任意文件上传漏洞复现0x01 前言0x02 漏洞描述0x03 影响范围0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 CVE-2023-3836&#xff1a;大华智慧园区综合管理平台任意文件上传漏洞复现 0x01 前言 免责声…

Leetcode.2594 修车的最少时间

题目链接 Leetcode.2594 修车的最少时间 rating : 1915 题目描述 给你一个整数数组 r a n k s ranks ranks &#xff0c;表示一些机械工的 能力值 。 r a n k s _ i ranks\_i ranks_i 是第 i i i 位机械工的能力值。能力值为 r r r 的机械工可以在 r ∗ n 2 r * n^2 r∗n2…

0012Java程序设计-springboot基于微信小程序的校园智慧帮系统的设计与实现

摘要目录相关技术2.1 MySQL数据库2.2 SpringBoot框架2.3 uniapp框架2.4 B/S架构 系统设计系统实现开发环境 摘要 随着移动互联网高速发展&#xff0c;手机、移动智能终端设备在生活中有着越来越重要的地位。在高校推崇以人为本的今天&#xff0c;也逐渐重视“移动互联网”技术…

Java“牵手”1688商品详情数据,1688商品详情API接口,1688API接口申请指南

1688平台商品详情接口是开放平台提供的一种API接口&#xff0c;通过调用API接口&#xff0c;开发者可以获取1688商品的标题、价格、库存、月销量、总销量、库存、详情描述、图片等详细信息 。 获取商品详情接口API是一种用于获取电商平台上商品详情数据的接口&#xff0c;通过…

一套成熟的实验室信息管理系统(云LIS源码)ASP.NET CORE

一套成熟的实验室信息管理系统&#xff0c;集前处理、检验、报告、质控、统计分析、两癌等模块为一体的网络管理系统。它的开发和应用将加快检验科管理的统一化、网络化、标准化的进程。 LIS把检验、检疫、放免、细菌微生物及科研使用的各类分析仪器&#xff0c;通过计算机联…

CSS中如何实现文字渐变色效果(Text Gradient Color)?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 文字渐变色效果&#xff08;Text Gradient Color&#xff09;⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这…

目标检测YOLO实战应用案例100讲-SAR图像多尺度舰船目标检测

目录 前言 SAR舰船目标检测 基于背景特性的舰船目标检测方法

2023国赛数学建模C题思路模型 - 蔬菜类商品的自动定价与补货决策

# 1 赛题 在生鲜商超中&#xff0c;一般蔬菜类商品的保鲜期都比较短&#xff0c;且品相随销售时间的增加而变差&#xff0c; 大部分品种如当日未售出&#xff0c;隔日就无法再售。因此&#xff0c; 商超通常会根据各商品的历史销售和需 求情况每天进行补货。 由于商超销售的蔬菜…

代码随想录训练营二刷第十六天 | 104.二叉树的最大深度 559.n叉树的最大深度 111.二叉树的最小深度 222.完全二叉树的节点个数

代码随想录训练营二刷第十六天 | 104.二叉树的最大深度 559.n叉树的最大深度 111.二叉树的最小深度 222.完全二叉树的节点个数 一、104.二叉树的最大深度 题目链接&#xff1a;https://leetcode.cn/problems/maximum-depth-of-binary-tree/ 思路&#xff1a;后序遍历&#xf…

前端面试的话术集锦第 8 篇:高频考点(JS性能优化 性能优化琐碎事)

这是记录前端面试的话术集锦第八篇博文——高频考点(JS性能优化 & 性能优化琐碎事),我会不断更新该博文。❗❗❗ 1. 从V8中看JS性能优化 注意:该知识点属于性能优化领域。 1.1 测试性能⼯具 Chrome已经提供了⼀个⼤⽽全的性能测试⼯具Audits。 点我们点击Audits后,可…

最长回文子串

题目&#xff1a;给你一个字符串 s&#xff0c;找到 s 中最长的回文子串。如果字符串的反序与原始字符串相同&#xff0c;则该字符串称为回文字符串。 解题思路&#xff1a;动态规划 动态规划的思想&#xff1a;从一个比较小规模的问题开始&#xff0c;逐步得到较大规模的问题的…

【Git】01-Git基础

文章目录 Git基础1. 简述1.1 版本管理演变1.2 Git的特点 2. Git安装2.1 安装文档2.1 配置user信息 3. 创建仓库3.1 场景3.2 暂存区和工作区 4. 重命名5. 常用git log版本历史5.1 查看当前分支日志5.2 简洁查看日志5.3 查看最近指定条数的日志 6. 通过图形界面工具查看版本7. 探…

数据库-DQL

DQL&#xff1a;用来查询数据库表中的记录 关键字&#xff1a;SELECT 语法&#xff1a; select&#xff1a;字段列表 from&#xff1a;表名列表 where&#xff1a;条件列表 group by&#xff1a;分组列表 having&#xff1a;分组后条件列表 order by&#xff1a;排序字段列表…

UWB学习——day1

UWB定义 UWB&#xff1a;Ultra Wideband&#xff08;超宽频&#xff09; UWB所谓的超宽频区别于其它近场通信技术可总结为时域上跳跃&#xff0c;频域上矮胖 从图中可以看出&#xff0c;时域上通过短且强的脉冲信号&#xff0c;频域上主要是超宽的频谱&#xff08;Spectrum&a…

关于el-form中的el-input回车自动刷新页面

<el-form><el-form-item><el-inputv-model.trim"tablePage.keyWords"size"small"placeholder"请输入"keyup.enter.native"handleSearch()"clearable><el-buttonclick"handleSearch()"slot"prepen…