文章目录

  • 1. 题目
  • 2. 解题

1. 题目

LeetCode 设计了一款新式键盘,正在测试其可用性。测试人员将会点击一系列键(总计 n 个),每次一个。

给你一个长度为 n 的字符串 keysPressed ,其中 keysPressed[i] 表示测试序列中第 i 个被按下的键。releaseTimes 是一个升序排列的列表,其中 releaseTimes[i] 表示松开第 i 个键的时间。字符串和数组的 下标都从 0 开始 。第 0 个键在时间为 0 时被按下,接下来每个键都 恰好 在前一个键松开时被按下。

测试人员想要找出按键 持续时间最长 的键。(单次按键时间)
第 i 次按键的持续时间为 releaseTimes[i] - releaseTimes[i - 1] ,第 0 次按键的持续时间为 releaseTimes[0] 。

注意,测试期间,同一个键可以在不同时刻被多次按下,而每次的持续时间都可能不同。

请返回按键 持续时间最长 的键,如果有多个这样的键,则返回 按字母顺序排列最大 的那个键。

示例 1:
输入:releaseTimes = [9,29,49,50], keysPressed = "cbcd"
输出:"c"
解释:按键顺序和持续时间如下:
按下 'c' ,持续时间 9(时间 0 按下,时间 9 松开)
按下 'b' ,持续时间 29 - 9 = 20(松开上一个键的时间 9 按下,时间 29 松开)
按下 'c' ,持续时间 49 - 29 = 20(松开上一个键的时间 29 按下,时间 49 松开)
按下 'd' ,持续时间 50 - 49 = 1(松开上一个键的时间 49 按下,时间 50 松开)
按键持续时间最长的键是 'b' 和 'c'(第二次按下时),持续时间都是 20
'c' 按字母顺序排列比 'b' 大,所以答案是 'c'示例 2:
输入:releaseTimes = [12,23,36,46,62], keysPressed = "spuda"
输出:"a"
解释:按键顺序和持续时间如下:
按下 's' ,持续时间 12
按下 'p' ,持续时间 23 - 12 = 11
按下 'u' ,持续时间 36 - 23 = 13
按下 'd' ,持续时间 46 - 36 = 10
按下 'a' ,持续时间 62 - 46 = 16
按键持续时间最长的键是 'a' ,持续时间 16提示:
releaseTimes.length == n
keysPressed.length == n
2 <= n <= 1000
0 <= releaseTimes[i] <= 109
releaseTimes[i] < releaseTimes[i+1]
keysPressed 仅由小写英文字母组成

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/slowest-key
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

class Solution {public:char slowestKey(vector<int>& releaseTimes, string keysPressed) {int prev = 0, maxtime = 0, time = 0;char ans = 'a';for(int i = 0; i < releaseTimes.size(); i++) {time = releaseTimes[i]-prev;prev = releaseTimes[i];if(time > maxtime){maxtime = time;ans = keysPressed[i];}else if(time == maxtime && keysPressed[i] > ans)ans = keysPressed[i];}return ans;}
};

12 ms 10.5 MB


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!

LeetCode 1629. 按键持续时间最长的键相关推荐

  1. LeetCode简单题之按键持续时间最长的键

    题目 LeetCode 设计了一款新式键盘,正在测试其可用性.测试人员将会点击一系列键(总计 n 个),每次一个. 给你一个长度为 n 的字符串 keysPressed ,其中 keysPressed ...

  2. Z-Stack通过按键中断实现长按功能

    一.功能介绍 项目需要实现长按功能,实现按键有2种方式,一种是通过中断.一种KEY_CHANGE事件轮询的方式.由于中断更加的灵敏,这里选择中断的方式.意外的发现,如果开启了中断,那么按键就不会触发K ...

  3. ds310服务器运行灯不亮,【群晖 DS218+ 2盘位 NAS网络存储服务器外观设计】按键|usb2.0口|电源键|指示灯|风扇_摘要频道_什么值得买...

    群晖 DS218+ 2盘位 NAS网络存储服务器外观设计(按键|usb2.0口|电源键|指示灯|风扇) 最近占了亚马逊的便宜,拿到了免单的群晖DS218,这才算转白.由于原来买的是DS218+,贴不了 ...

  4. LeetCode高频题300. 最长递增子序列

    LeetCode高频题300. 最长递增子序列 提示:本题是系列LeetCode的150道高频题,你未来遇到的互联网大厂的笔试和面试考题,基本都是从这上面改编而来的题目 互联网大厂们在公司养了一大批A ...

  5. c语言最长递增子序列nlogn,十月常见算法考题、最长递增子序列,Leetcode第300题最长上升子...

    十月常见算法考题.最长递增子序列,Leetcode第300题最长上升子 十月常见算法考题.最长递增子序列,Leetcode第300题最长上升子序列的变种,我没见过乔丹,今天詹姆斯就是我的神! @Aut ...

  6. 计算机主机按键名称,space是哪个键 各种电脑键位名称及功用详解【图文】

    space,这个词不知道大家有没有听过或是见过.反正小编是知道的.嘿嘿--好吧言归正传,space就是一种我们电脑命令的一种.它属于某个键位的名字,其实我们有很多朋友都是只认识我们键盘上的26个英文字 ...

  7. LeetCode高频题:最长公共子序列,玩游戏A和游戏B,两兄弟加起来最多可以获得多少奖品

    LeetCode高频题:最长公共子序列,玩游戏A和游戏B,两兄弟加起来最多可以获得多少奖品? 提示:本题是系列LeetCode的150道高频题,你未来遇到的互联网大厂的笔试和面试考题,基本都是从这上面 ...

  8. android power 按键,Android Framework层Power键关机流程(一,Power长按键操作处理)

    一:Android处理Power按键长按操作 在Framework层中,Android4.x对Power键(KeyEvent.KEYCODE_POWER)的操作,我们从PhoneWindowManag ...

  9. Windows 8/8.1 下,键盘长按键后,鼠标左键短暂失灵问题

    在Windows8.1系统下,玩FPS系列游戏(鬼泣5,剑灵等),键盘某按键长按的同时鼠标左键会暂时失灵. 以下是解决方法,转载自http://blog.csdn.net/maxsky/article ...

最新文章

  1. mysql 删除 修改密码_Mysql数据库root密码忘记了,如何在不删除Mysql的情况下修改密码...
  2. 编写驱动的makefile使要
  3. Transformation XML(TCODE-STRANS)
  4. HALCON示例程序count_fish_sticks.hdev鱼棒完整性检测
  5. [jQuery] 针对jQuery性能的优化方法有哪些?
  6. win7系统临时文件夹的打开方法
  7. 8266不通过usb供电_HomePod mini?电源线同样不可拆卸:但或能用USB-C移动电源供电...
  8. 20211202:力扣第268周周赛(下)
  9. 手机鸿蒙系统体验,首位!魅族Lipro智能家居宣布接入鸿蒙系统,魅族手机还会远吗?...
  10. 原生js用ajax上传图片,关于js ajax上传图片
  11. Flutter使用阿里矢量图库管理项目svg图片
  12. 常用的17个运维监控系统(必备知识)
  13. next主题美化——背景图片、页面透明化、阴影、圆角、动画
  14. 杰理之AUDIO_DAC【篇】
  15. 阿里巴巴校园招聘在线面试之附加题
  16. n个节点互异的拉格朗日插值基函数之和等于一证明
  17. 烽火算法题 报数问题(不是约瑟夫环)双向链表 Java实现与C实现
  18. 基于EasyDarwin云视频平台的幼儿园视频直播(手机直播/微信直播)解决方案
  19. kubernetes hpa源码分析
  20. python生信编程1-5

热门文章

  1. 互联网金融行业申请评分卡(A卡)简介
  2. Kinect深度图与摄像头RGB的标定与配准(转载文章)
  3. 当c语言老师遇到网络崩溃,网络教学搞不定?工科教授来支招!
  4. 执行jar包,输出信息到文件
  5. frp对http协议应用
  6. mysql日志种类、二进制日志模式、mysqlbinlog解析二进制日志
  7. Android 位置服务——BaiduLocation的使用
  8. vue中,点击button按钮后,页面上的input框再次自动获取焦点
  9. html嵌套html解决办法(object/object)
  10. (转)基因芯片数据GO和KEGG功能分析