2023华为OD机试真题【分奖金/单调栈】

2023-11-11

题目内容

公司老板做了一笔大生意,想要给每位员工分配一些奖金,想通过游戏的方式来决定每个人分多少钱。按照员工的工号顺序,每个人随机抽取一个数字。按照工号的顺序往后排列,遇到第一个数字比自己数字大的,那么,前面的员工就可以获得“距离数字差值”的奖金。如果遇不到比自己数字大的,就给自己分配随机数数量的奖金。例如,按照工号顺序的随机数字是: 2,10.3。那么第2个员工的数字10比第1个员工的数字2大,所以,第1个员工可以获得1(10-2) =8。第2个员工后面没有比他数字更大的员工,所以,他获得他分配的随机数数量的奖金,就是10。第3个员工是最后一个员工,后面也没有比他更大数字的员工,所以他得到的奖金是3。
请帮老板计算一下每位员工最终分到的奖金都是多少钱
输入描述:
第一行n表示员工数量 (包含最后一个老板)
第二是每位员工分配的随机数字
输出描述:
最终每位员工分到的奖金数量
随机数字不重复,员工数量(包含老板)范围110000,随机数范围1100000
输入:
3
2 10 3
输出:
8 10 3

解题思路

题目的意思是,找数组的每一个元素的右边第一个比它大的数字。由此可以想到用单调栈解题。
使用栈存储需要比较的工号。遍历每个员工的随机数,若栈为空或当前员工随机数小于等于栈顶员工随机数,将当前员工工号入栈。若当前员工随机数大于栈顶员工随机数,则计算栈顶员工的奖金,并将栈顶员工出栈

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2023华为OD机试真题【分奖金/单调栈】 的相关文章

  • 如何在createQueryBuilder中使用通配符?

    在我的存储库类中 我使用 public function getItemsByTag tag qb this gt createQueryBuilder c gt select c gt where c tags LIKE bipolar
  • 在 OpenXML 中应用数字格式

    我正在尝试使用 OpenXML 从头开始 创建 Excel 电子表格 并且一切正常 将实际值转储到实际单元格中 但现在我正在尝试将数字格式应用于列 但遇到了问题 我有styles xml看起来像这样
  • 如何使盒子阴影显示在容器中的下一个元素上?

    请看这段代码 http codepen io Varin pen kkGgVd http codepen io Varin pen kkGgVd div class container div class outside2 div clas
  • 使用 php 变量更改 css 类

    这里需要您的帮助 正如标题所示 我正在尝试使用 PHP 变量更改 css 类 所以基本上我想创建一个回显某些代码的循环 但我希望第一个循环中的 div 类有所不同 它应该被隐藏 这是我为使问题变得清晰而编写的简化代码 我不知道错误在哪里 请
  • 如何在 Angular 2 中订阅 DOMContentLoaded 事件?

    我正在将 UI 主题从 Angular 1 移植到 Angular 2 在第 1 个版本中 我有 viewContentLoaded事件 我想将其重新制作为 Angular 2 我正在尝试使用 HostListener DOMContent
  • 为什么 .each 在我的 Rails 视图中完成后会重复数组? [复制]

    这个问题在这里已经有答案了 在我的 Rails 视图页面中 我有以下循环 它应该循环遍历我的 tag list 数组并打印每个标签 由于某种原因 它在打印每个单独的标签后会重复该数组 例如 这个数组有两个元素 ruby python 每个方
  • addEventListener keydown 不起作用

    我在互联网上找到了一些基本的 Pong 代码 并尝试添加按键 代码在这里 http cssdeck com labs ping pong game tutorial with html5 canvas and sounds http css
  • Selenium Python 使用代理运行浏览器[重复]

    这个问题在这里已经有答案了 我正在尝试编写一个非常简单的脚本 该脚本从 txt 文件获取代理 不需要身份验证 并用它打开浏览器 然后沿着代理列表循环此操作一定次数 我确实知道如何打开 txt 文件并使用它 我的主要问题是让代理正常工作 我见
  • 使用 OpenLayers 动态添加自定义标记到地图

    我想让用户在地图上添加自定义标记以及每个标记的描述 任何提示 任何教程的链接都会非常有用 您可以注册一个函数来在地图上 点击 事件 当用户单击它时 会自动添加该标记 尝试这样的事情 map is your map created using
  • 新的 .NET 6 控制台模板中的 C# 函数重载不起作用

    我在尝试重载该函数时遇到错误Print object in the 新的 NET 6 C 控制台应用程序模板 https learn microsoft com en us dotnet core tutorials top level t
  • git stash 和编辑帅哥

    我完全喜欢git add p and git stash但我偶尔会遇到以下问题 该问题是通过以下命令序列重现的 git add p my file 然后我手动编辑大块 using e 因为 git 建议的分割不适合我 git stash k
  • PDO 返回不正确但重复的数据。密钥不在数据库中。

    我刚开始使用 pdo 语句 所以可能是一些简单的东西 我还没有在 php net 上读过 查询数据库时我收到重复的结果 Result 0 gt Array umeta id gt 31 0 gt 31 user id gt 2 1 gt 2
  • Shap - 颜色条不显示在摘要图中

    显示summary plot时 不显示颜色条 shap summary plot shap values X train 我尝试过改变plot size 当绘图较高时 会出现颜色条 但它非常小 看起来不应该 shap summary plo
  • 将元素添加到 D3 圆包节点

    我正在尝试制作一个可缩放的圆形包装图 我希望每个子圆圈包含一个较小的图表 该图表始终具有相同的结构 即 4 列 只有条形的高度会改变 我尝试添加一个简单的rect到目前为止我的图表 但矩形没有添加到圆圈中并且是静态的 JS var marg
  • FindAsync 很慢,但是延迟加载很快

    在我的代码中 我曾经使用加载相关实体await FindAsync 希望我能更好地遵守 C 异步指南 var activeTemplate await exec DbContext FormTemplates FindAsync exec
  • Javascript:修改原型不会影响现有实例[重复]

    这个问题在这里已经有答案了 我创建了原型的 2 个实例 更改了原型中的函数 更改反映在两个实例中 很棒 但是 当我通过删除该函数来修改原型时 该函数对于现有实例仍然存在 function A this name cool A prototy
  • 截断段落前 100 个字符并隐藏段落的其余内容,以通过更多/更少链接显示/隐藏其余内容

    我有一个超过 500 个字符的段落 我只想获取最初的 100 个字符并隐藏其余部分 我还想在 100 个字符旁边插入 更多 链接 单击更多链接时 整个段落应显示并编辑文本 更多 到 更少 单击 更少 时 它应切换行为 段落是动态生成的 我无
  • jvm 如何以及何时何地更改 Linux 的最大打开文件值?

    在linux中 每个登录用户的每个进程的最大打开文件数有限制 如下所示 ulimit n 1024 当我学习java nio时 我想检查这个值 因为channel在Linux中也是一个文件 所以我编写了一个客户端代码来不断创建socketC
  • 同时有两个操作栏(底部和向上)?

    我需要制作两个操作栏 顺便说一下我正在使用actionBarSherlock 所以我真正需要的是在正常操作栏上放置一个 欢迎屏幕 开关 并添加两个正常的 ActionBar 操作选项 与我需要的类似的是 Gmail 和地图 如下所示 htt
  • 如何使用反应本机在数字键盘上添加“完成”按钮

    我在react native中使用数字键盘 我想在单击完成按钮时隐藏键盘 因为我想在键盘上方添加完成按钮 是否有可能像IOS应用程序一样隐藏键盘 任何帮助非常感激 我不确定这是否正是您想要的 但您可以使用 prop returnKeyTyp

随机推荐

  • 探索Java8——用Optional取代null

    文章目录 为缺失值建模 采用防御式检查减少 NullPointerException Optional类入门 应用 Optional 的几种模式 为缺失值建模 假设你需要处理下面这样的嵌套对象 这是一个拥有汽车及汽车保险的客户 public
  • pyqt和ros结合使用接受相机和点云消息并展示(附代码)

    代码是 ROS 节点的 Python QT脚本 用于订阅 turtle1 cmd vel tracking image 和 test pointcloud 话题 脚本首先通过 ps 命令检查是否已启动 ROS 主节点 如果没有则启动一个新的
  • Kafka事务提交位点失败

    记一次kafka事务提交失败 线上业务报错 2019 10 29 20 27 48 621 l fin ycb sync server1 toc pre ali dm org springframework kafka KafkaListe
  • geopandas安装方法

    依次按顺序安装 在这下载依赖包 https www lfd uci edu gohlke pythonlibs 然后逐个安装 1 安装gdal pip install C Users lenovo Downloads GDAL 3 4 3
  • ajax调用echarts,ajax和echarts第一次相遇

    ajax和echarts渲染基础 对于动态数据的展示 数据库内容的实时展示 如何能快速高校的在前端图表中展示呢 今天 小柯君带你简单体会一下ajax的神奇可妙之处 要加油啊 各位君 一 echarts简单案例 1 先导入你下载好的echar
  • 报错类型提示:HEAP CORRUPTION DETECTED:after Nomal block

    上次做实验遇到了这个报错 足足调了好久 最后上网查了才知道为什么 注释处的代码就原本发生错误的代码 原因是你使用了你没有调用的空间 然后你用delete回收的时候回收了你未调用的空间 所以报错
  • 小规模票表比对不通过_增值税小规模纳税人申报比对异常怎么办?这里有最新处理流程...

    小规模纳税人的申报比对异常如何提示 应该到哪个科 所 进行处理 该科 所 在哪里 赶紧往下看吧 猴嗨森 发送报表后 提示 一窗式比对不通过 怎么办 根据异常事项提供相关证明材料到主管税务机关办理 牛给力 猴嗨森 需要预约号处理小规模纳税人申
  • Servlet 执行原理和API 详情

    目录 1 Serlvet 运行原理 1 1 Tomcat 执行流程 a Tomcat 初始化流程 b Tomcat处理请求流程 c Servlet 中 service 法的实现 2 Servlet API详解 2 1 HttpServlet
  • 猿蜕变系列5——一文搞懂Controller的花式编写

    看过之前的执行流程 相信你对springMVC有了一定的认识 今天我们继续来学习springMVC相关的核心知识 帮助你快速起飞 完成蜕变 猿蜕变同样是一个原创系列文章 帮助你从一个普通的小白 开始掌握一些行业内通用的框架技术知识以及锻炼你
  • 最新win10+2080Ti下安装TensorFlow-GPU(带各个版本的cuda cudnn)

    最新实测好用 环境 Windows10 2080Ti 显卡 安装网上说的教程进行安装 需要的配置环境 cuda10 cudnn 7 3 1 版本这里谨记一点 不要进去下最新的版本 到目前发布为止 官网的cuda版本为10 1 地址 http
  • node包管理器nvm的安装与使用,以及安装遇到的问题和解决方案

    前言 随着vue3 0的普及 公司的新项目也都开始使用vue3 0 typescript vite的模式了 但是有的老项目还在有vue2 0 所以在开发不同项目的时候就会遇到因为node版本不同带来的各种不兼容 这个时候就需要用到nvm管理
  • 数据库——自然连接、内连接、外连接(左外连接、右外连接、全外连接)、交叉连接

    1 自然连接 natural join 自然连接不用指定连接列 也不能使用ON语句 它默认比较两张表里相同的列 SELECT FROM student NATURAL JOIN score 显示结果如下 2 内连接 inner join 和
  • Android 内存优化(四) —— 未取消注册或回调导致内存泄露

    未取消注册或回调导致内存泄露 比如我们在 Activity 中注册广播 如果在 Activity 销毁后不取消注册 那么这个刚播会一直存在 系统中 同上面所说的非静态内部类一样持有 Activity 引用 导致内存泄露 因此注册广播后在 A
  • Django连接Mysql报错:ModuleNotFoundError: No module named 'MySQLdb'

    Django连接Mysql报错 环境 Django 1 11 8 与 Python 3 6 ModuleNotFoundError No module named MySQLdb django core exceptions Imprope
  • 实验一,简单的C++程序

    实验1 简单的C 程序 一 实验目的和要求 1 熟悉Visual C 6 0编译系统的常用功能 2 学会使用Visual C 6 0编译系统实现简单的C 程序 3 熟悉C 程序的基本结构 学会使用简单的输入 输出操作 二 实验内容 1 编译
  • 短视频源码PHP进入大屏时期,你会观看吗?

    网络环境的开展 电视能够说是离我们越来越远 在网络 手机的普遍应用下 短视频行业 直播行业都更倾向于手机端开展 而小小的手机屏幕曾经不能满足用户的需求 假如将短视频源码PHP与电视分离会是怎样的场景呢 固然我们对电视观看的次数降落 但电视的
  • js的if条件判断

    js的if条件判断 if 条件表达式 console log true 如果条件表达式为true 执行该处代码 不再执行else后面代码 else console log false 如果条件表达式为false 执行该处代码 if 1 co
  • ajax异步获取svg,jQuery的AJAX从文件中检索SVG - 错误:“没有很好地形成”(jQuery AJAX r...

    我一直在使用从Inkscape中许多不同的SVG和使用 load了一会儿特定的容器元素 最近 我试图改变负载于获取 AJAX 主要是为了能够预先设置SVG 这pefectly工作 SVG前置到元素应该做的 问题是我得到的控制台错误使用检索S
  • Lsyncd 实时同步

    1 描述 Lsyncd ssh 开源lsyncd采用inotify原理监听某一个目录 如果目录内发生变化 利用rsync协议自动同步多服务器 因此lsyncd是一个轻量级的实时镜像解决方案 细粒度的定制可以通过配置文件来实现 配置文件可以编
  • 2023华为OD机试真题【分奖金/单调栈】

    题目内容 公司老板做了一笔大生意 想要给每位员工分配一些奖金 想通过游戏的方式来决定每个人分多少钱 按照员工的工号顺序 每个人随机抽取一个数字 按照工号的顺序往后排列 遇到第一个数字比自己数字大的 那么 前面的员工就可以获得 距离数字差值