【LetMeFly】1599.经营摩天轮的最大利润

力扣题目链接:https://leetcode.cn/problems/maximum-profit-of-operating-a-centennial-wheel/

你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱 最多可以容纳 4 位游客 。你可以 逆时针 轮转座舱,但每次轮转都需要支付一定的运行成本 runningCost 。摩天轮每次轮转都恰好转动 1 / 4 周。

给你一个长度为 n 的数组 customerscustomers[i] 是在第 i 次轮转(下标从 0 开始)之前到达的新游客的数量。这也意味着你必须在新游客到来前轮转 i 次。每位游客在登上离地面最近的座舱前都会支付登舱成本 boardingCost ,一旦该座舱再次抵达地面,他们就会离开座舱结束游玩。

你可以随时停下摩天轮,即便是 在服务所有游客之前 。如果你决定停止运营摩天轮,为了保证所有游客安全着陆,将免费进行所有后续轮转 。注意,如果有超过 4 位游客在等摩天轮,那么只有 4 位游客可以登上摩天轮,其余的需要等待 下一次轮转

返回最大化利润所需执行的 最小轮转次数 。 如果不存在利润为正的方案,则返回 -1

示例 1:

输入:customers = [8,3], boardingCost = 5, runningCost = 6
输出:3
解释:座舱上标注的数字是该座舱的当前游客数。
1. 8 位游客抵达,4 位登舱,4 位等待下一舱,摩天轮轮转。当前利润为 4 * $5 - 1 * $6 = $14 。
2. 3 位游客抵达,4 位在等待的游客登舱,其他 3 位等待,摩天轮轮转。当前利润为 8 * $5 - 2 * $6 = $28 。
3. 最后 3 位游客登舱,摩天轮轮转。当前利润为 11 * $5 - 3 * $6 = $37 。
轮转 3 次得到最大利润,最大利润为 $37 。

示例 2:

输入:customers = [10,9,6], boardingCost = 6, runningCost = 4
输出:7
解释:
1. 10 位游客抵达,4 位登舱,6 位等待下一舱,摩天轮轮转。当前利润为 4 * $6 - 1 * $4 = $20 。
2. 9 位游客抵达,4 位登舱,11 位等待(2 位是先前就在等待的,9 位新加入等待的),摩天轮轮转。当前利润为 8 * $6 - 2 * $4 = $40 。
3. 最后 6 位游客抵达,4 位登舱,13 位等待,摩天轮轮转。当前利润为 12 * $6 - 3 * $4 = $60 。
4. 4 位登舱,9 位等待,摩天轮轮转。当前利润为 * $6 - 4 * $4 = $80 。
5. 4 位登舱,5 位等待,摩天轮轮转。当前利润为 20 * $6 - 5 * $4 = $100 。
6. 4 位登舱,1 位等待,摩天轮轮转。当前利润为 24 * $6 - 6 * $4 = $120 。
7. 1 位登舱,摩天轮轮转。当前利润为 25 * $6 - 7 * $4 = $122 。
轮转 7 次得到最大利润,最大利润为$122 。

示例 3:

输入:customers = [3,4,0,5,1], boardingCost = 1, runningCost = 92
输出:-1
解释:
1. 3 位游客抵达,3 位登舱,0 位等待,摩天轮轮转。当前利润为 3 * $1 - 1 * $92 = -$89 。
2. 4 位游客抵达,4 位登舱,0 位等待,摩天轮轮转。当前利润为 is 7 * $1 - 2 * $92 = -$177 。
3. 0 位游客抵达,0 位登舱,0 位等待,摩天轮轮转。当前利润为 7 * $1 - 3 * $92 = -$269 。
4. 5 位游客抵达,4 位登舱,1 位等待,摩天轮轮转。当前利润为 12 * $1 - 4 * $92 = -$356 。
5. 1 位游客抵达,2 位登舱,0 位等待,摩天轮轮转。当前利润为 13 * $1 - 5 * $92 = -$447 。
利润永不为正,所以返回 -1 。

提示:

  • n == customers.length
  • 1 <= n <= 105
  • 0 <= customers[i] <= 50
  • 1 <= boardingCost, runningCost <= 100

题目描述

首先需要重新描述一下题面(这道题的中文体面翻译得有些抽象)

这道题的意思是:摩天轮每运行一个舱位需要花费成本 r u n n i n g C o s t runningCost runningCost元,每个舱位最多乘坐 4 4 4名乘客,每名乘客收费 b o a r d i n g C o s t boardingCost boardingCost元。

摩天轮匀速运行 i i i个舱位时会有 c u s t o m e r s [ i ] customers[i] customers[i]个新乘客前来排队,乘客左上摩天轮后至少运行一个舱位,然后你可以随时停止摩天轮的运行(管他乘客是否还在半空中)

黑心的商人啊,唯有利益能进入他的视线!

方法一:模拟 + 贪心

使用以下几个变量:

  • ans:答案answer的缩写,用于记录答案(运行多少次最佳)
  • maxEarn:最多获利多少元
  • nowEarn:这次运行后,获利多少元
  • customerInLine:到目前为止共有多少乘客在排队
  • times:运行了多少次

只需要不断模拟,直到所有乘客都上了

LeetCode 1599. 经营摩天轮的最大利润相关推荐

  1. LeetCode 1599. 经营摩天轮的最大利润(模拟)

    文章目录 1. 题目 2. 解题 1. 题目 你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱 最多可以容纳 4 位游客 .你可以 逆时针 轮转座舱,但每次轮转都需要支付一定的运行成本 ru ...

  2. 1599 经营摩天轮的最大利润(模拟)

    1. 问题描述: 你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱最多可以容纳 4 位游客 .你可以逆时针轮转座舱,但每次轮转都需要支付一定的运行成本 runningCost .摩天轮每次轮 ...

  3. 【1599. 经营摩天轮的最大利润】

    来源:力扣(LeetCode) 描述: 你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱 最多可以容纳 4 位游客 .你可以 逆时针 轮转座舱,但每次轮转都需要支付一定的运行成本 runni ...

  4. 1599 经营摩天轮的最大利润

    题目描述: 你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱 最多可以容纳 4 位游客 .你可以 逆时针 轮转座舱,但每次轮转都需要支付一定的运行成本 runningCost .摩天轮每次轮 ...

  5. 经营摩天轮的最大利润

    LeetCode 第208场周赛 第二题 经营摩天轮的最大利润 题目描述: 写题感受: 这是我第一次参加力扣的周赛,题目给我直接的感觉是长,难读,我理解题意都是拿用例套进题目去理解.毕竟,我是渣渣一个 ...

  6. leetcode1599. 经营摩天轮的最大利润(Python3、c++)

    文章目录 leetcode1599. 经营摩天轮的最大利润 方法:模拟 思路: 代码: Python3: cpp: 结果: leetcode1599. 经营摩天轮的最大利润 你正在经营一座摩天轮,该摩 ...

  7. 全球最高摩天轮落户北京 高208米直径193米(图)

    [提要] 北京朝天轮项目今天在朝阳公园破土动工.这座摩天轮高达208米,直径达193米,建成后将成为全球最高的摩天轮.他的设计突破了结构超高.直径超长.轮轴超大等多项世界工程建筑的难题.日后他将成为 ...

  8. 摩天轮社区_看房日记:难得!宜宾,又来一楼盘!一线江景+公园+学校,还有小户型、摩天轮...

    文/ 冰冰 宜宾,又来一新盘 算是目前临港在售楼盘中,离江最近的一个盘 一线江景+公园+学校+小户型+摩天轮 要知道,在临港,最缺的就是学校和桥,而这个楼盘,居然两样都不缺! 究竟是谁? 冰冰到现场来 ...

  9. 神策专访丨摩天轮票务陈校校:在线票务平台精准营销之道

    "十三五"规划实施以来,国家将文化产业提升到国家战略层面,基于政策环境利好,居民收入增加,消费升级及娱乐方式多元化等因素,进一步促进了现场文化娱乐的爆发式增长.线上消费便利性的提升 ...

最新文章

  1. html5调用系统声音1s响一次_HTML5声音录制/播放功能的实现代码
  2. 语言舒尔特方格程序_注意力训练神器——舒尔特方格(成人、孩子均适用)
  3. GdiPlus[59]: 图像(十一) IGPImageAttributes 之颜色矩阵(TGPColorMatrix)变换
  4. java如何判断打印是否成功_如何验证Zebra打印机是否使用ZPL和C#成功打印(或能够检测到错误)?...
  5. 利用expect实现自动化操作
  6. 个人编程思想理解的片段(主要是面向对象的,参考了许多人的观点,还不成熟,没形成系统,请大家多指点)...
  7. 信息学奥赛一本通(2052:【例3.2】范围判断)
  8. Nordic Collegiate Programming Contest (NCPC) 2016
  9. Shell脚本基础语法
  10. 簇的局部变量中布尔类型_GO语言入门(go的基本类型)
  11. mysql导出一行数据类型_MySQL 导出数据
  12. 总结——达内视频(一)
  13. Windows 定时关机命令
  14. 发改委交通运输部印发《推进“互联网+”便捷交通 促进智能交通发展的实施方案》(全文)...
  15. 移动硬盘变成RAW,如何将其转换为NTFS
  16. 文科三本学计算机专业好吗,三本学费一年大约需要多少
  17. 论起凡尔赛文学,还是比不过数据分析师!
  18. 用matlab软件心得体会,MATLAB软件实训报告 - 图文
  19. u盘无法打开 计算机限制,u盘无法打开,教您U盘打不开常用修复方法
  20. 文献管理软件Mendeley优缺点分析

热门文章

  1. 解决FileReader读取txt文件乱码
  2. 《寒假去世十 第一章》
  3. exe4j打包问题解决方案
  4. JavaScript中if语句
  5. linux和unix区别_Unix vs Linux – Unix和Linux之间的区别
  6. 腾讯云AMD EPYC Milan(2.55GHz/3.5GHz)服务器CPU处理器
  7. validform入门
  8. 2013年06月新萝卜家园Ghost xp3装机版v2013◆年中推荐◆
  9. Appium中Desired Capabilities参数设置
  10. 击败申真谞陪练的围棋AI,却输给了业余人类棋手 | MIT伯克利新研究