5926. 买票需要的时间

有 n 个人前来排队买票,其中第 0 人站在队伍 最前方 ,第 (n - 1) 人站在队伍 最后方 。

给你一个下标从 0 开始的整数数组 tickets ,数组长度为 n ,其中第 i 人想要购买的票数为 tickets[i] 。

每个人买票都需要用掉 恰好 1 秒 。一个人 一次只能买一张票 ,如果需要购买更多票,他必须走到 队尾 重新排队(瞬间 发生,不计时间)。如果一个人没有剩下需要买的票,那他将会 离开 队伍。

返回位于位置 k(下标从 0 开始)的人完成买票需要的时间(以秒为单位)。

示例 1:

输入:tickets = [2,3,2], k = 2
输出:6
解释:

  • 第一轮,队伍中的每个人都买到一张票,队伍变为 [1, 2, 1] 。
  • 第二轮,队伍中的每个都又都买到一张票,队伍变为 [0, 1, 0] 。
    位置 2 的人成功买到 2 张票,用掉 3 + 3 = 6 秒。
    示例 2:

输入:tickets = [5,1,1,1], k = 0
输出:8
解释:

  • 第一轮,队伍中的每个人都买到一张票,队伍变为 [4, 0, 0, 0] 。
  • 接下来的 4 轮,只有位置 0 的人在买票。
    位置 0 的人成功买到 5 张票,用掉 4 + 1 + 1 + 1 + 1 = 8 秒。

提示:

  • n == tickets.length
  • 1 <= n <= 100
  • 1 <= tickets[i] <= 100
  • 0 <= k < n

解题思路

模拟每个人按照下标大小进行购票,每个人买票都需要用掉 恰好 1 秒 ,并且一个人 一次只能买一张票,因此每个人在每一轮购票中花费的时间是1s,因此我们只需要统计当目标下标k,减少为0时,曾经有多少张票被卖出即可,就可以得出买票所需要的时间。

代码

class Solution {public:int timeRequiredToBuy(vector<int>& tickets, int k) {int cnt(0);while (true){for (int i = 0; i < tickets.size(); ++i) {if (tickets[i]>0){cnt++;tickets[i]--;if(tickets[k]==0)return cnt;}}}return cnt;}
};

5926. 买票需要的时间相关推荐

  1. LeetCode 5926. 买票需要的时间

    有 n 个人前来排队买票,其中第 0 人站在队伍 最前方 ,第 (n - 1) 人站在队伍 最后方 . 给你一个下标从 0 开始的整数数组 tickets ,数组长度为 n ,其中第 i 人想要购买的 ...

  2. LeetCode 2073. 买票需要的时间

    文章目录 1. 题目 2. 解题 1. 题目 有 n 个人前来排队买票,其中第 0 人站在队伍 最前方 ,第 (n - 1) 人站在队伍 最后方 . 给你一个下标从 0 开始的整数数组 tickets ...

  3. 2073 买票需要的时间

    题目描述: 有 n 个人前来排队买票,其中第 0 人站在队伍 最前方 ,第 (n - 1) 人站在队伍 最后方 . 给你一个下标从 0 开始的整数数组 tickets ,数组长度为 n ,其中第 i ...

  4. 买票需要的时间-c语言

    买票需要的时间-c语言 有 n 个人前来排队买票,其中第 0 人站在队伍 最前方 ,第 (n - 1) 人站在队伍 最后方 . 给你一个下标从 0 开始的整数数组 tickets ,数组长度为 n , ...

  5. 同时买票是怎么实现的_刷脸进站,语音买票!广州地铁这波操作666~

    时候还能显示哪个位置好上车? 动动嘴巴就能买地铁票? 一边安检一边过闸机? 这些高科技 就在广州地铁可以实现! 9月9日,智慧地铁示范车站在广州地铁三号线.APM线广州塔站和二十一号线天河智慧城站正式 ...

  6. 同时买票是怎么实现的_去巴黎玩怎么买地铁票最划算?| 巴黎最全交通攻略

    次票.天票.机场票--傻傻分不清楚.不会法语怎么办?什么时候买有优惠?看这一篇全知道 ​​巴黎作为国际大都市,交通还是非常方便的.基本上80%的巴黎景点都能坐地铁到达,就在我们平常所说的小巴黎里.整个 ...

  7. 2020年春运买票中对“候补购票”的理解和看法。

    2020年除夕是1月24日.最希望出发回家的日期是1月23日.以往春运回家都是京沪线北京--南京,票很容易买.但今年决定买北京南-徐州东. 1.2019年12月26日,查询1月23日北京南-徐州东,高 ...

  8. 同时买票是怎么实现的_候补购票和抢票有什么不同 候补购票和抢票可以同时进行吗...

    每年春节到来之前,大家最关心的问题就是买票抢票了,而现在12306推出了候补购票功能,让更多人能及时买到回家的车票.但候补购票和抢票区别是什么呢?能同时进行吗?看看下文. 候补购票和抢票有什么区别 候 ...

  9. 同时买票是怎么实现的_候补购票和抢票有什么不同 候补购票和抢票能同时进行吗...

    每年春节到来之前,大家最关心的问题就是买票抢票了,而现在12306推出了候补购票功能,让更多人能及时买到回家的车票.但候补购票和抢票区别是什么呢?能同时进行吗?看看下文. 候补购票和抢票有什么区别 候 ...

最新文章

  1. /dev/tty /dev/ttyS0 /dev/tty0区别
  2. errorgetlast php,php error_clear_last()函数与error_get_last()函数
  3. 手把手教你用jQuery实现手动自动轮播
  4. springmvc 配置 tag lib_Java自学之springMVC:Hello Spring MVC
  5. python删除txt指定内容_python删除文件中指定内容
  6. Android如何分析native代码,使用android-ndk-profiler对native代码进行性能分析
  7. 【明人不说暗话】我就只讲进程与线程
  8. etc/ld.so.conf文件
  9. [转载] python 超高精度除法_Python十进制-除法,舍入,精度
  10. StringBuffer 的 各种方法
  11. 函数 strncpy、strncat、strncmp、strrchr 的实现
  12. Web Server
  13. 铁路售票系统_城轨交通自动售检票(AFC)实训系统中心_地高铁车站票务实训如何建设...
  14. 墨卡托、高斯克吕格、UTM投影
  15. Python-继人物词频统计三国演义之后-三国词云(Wordcloud)
  16. c#写的屏保,好看,不影响任何操作。
  17. 如何调整html中音乐播放器的大小,请教音乐播放器大小如何调整?
  18. MySQL命令行登录
  19. linux tomcat apr安装,Linux下为Tomcat安装APR
  20. ISLR读书笔记十六:最大边际分类器(maximal margin classifier)

热门文章

  1. 【算法】学习笔记(5):快速排序
  2. 我们究竟还要学习哪些Android知识?附赠课程+题库
  3. 集合之ArrayList(含JDK1.8源码分析)
  4. [ BZOJ 2160 ] 拉拉队排练
  5. spring-DataSource
  6. VS2005中ReportViewer 本地模式下报表呈现 入门示例
  7. 基于 Spring Cloud 完整的微服务架构实战
  8. node搭建服务器,写接口,调接口,跨域
  9. 项目进行JVM调优 Jconsole
  10. Oracle RAC