LeetCode 925 Long Pressed Name

题目链接

Your friend is typing his name into a keyboard. Sometimes, when typing a character c, the key might get long pressed, and the character will be typed 1 or more times.

You examine the typed characters of the keyboard. Return True if it is possible that it was your friends name, with some characters (possibly none) being long pressed.

Example 1:

Input: name = "alex", typed = "aaleex"
Output: true
Explanation: 'a' and 'e' in 'alex' were long pressed.

Example 2:

Input: name = "saeed", typed = "ssaaedd"
Output: false
Explanation: 'e' must have been pressed twice, but it wasn't in the typed output.

Example 3:

Input: name = "leelee", typed = "lleeelee"
Output: true

Example 4:

Input: name = "laiden", typed = "laiden"
Output: true
Explanation: It's not necessary to long press any character.

这题比较扣细节,我是这么考虑的,每次选字符串的第一个字符,然后分别取出所有该字符的数量为 c n t 1 cnt1 cnt1 和 c n t 2 cnt2 cnt2,显然如果不是长按输入有三种情况:

  1. 字符不相同
  2. c n t 1 > c n t 2 cnt1>cnt2 cnt1>cnt2
  3. 两个字符串中有且仅有一个长度为 0 0 0

AC代码如下:

class Solution {public:bool isLongPressedName(string name, string typed) {while(name.size()&&typed.size()){int cnt1=0,cnt2=0;char a=name[0];while(name[0]==a) name.erase(name.begin()),cnt1++;char b=typed[0];while(typed[0]==b) typed.erase(typed.begin()),cnt2++;if(a!=b||cnt1>cnt2||(name.size()*typed.size()==0&&name.size()+typed.size())) return 0;}return 1;}
};

LeetCode 925 Long Pressed Name相关推荐

  1. LeetCode:925. Long Pressed Name

    051202 题目 Your friend is typing his name into a keyboard. Sometimes, when typing a character c, the ...

  2. Leetcode每日一题:925.Long Pressed Name(长按键入)

    大致意思就是typed对应位置上的相同字符数要大于等于name对应位置上的字符 思路:双指针遍历,每次都找出对应位置上字符的个数,再比较即可,注意不要忘了typed字符串过长的问题: bool isL ...

  3. LeetCode 925. 长按键入(双指针)

    1. 题目 你的朋友正在使用键盘输入他的名字 name. 偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次. 你将会检查键盘输入的字符 typed. 如果它对应的可能是你的朋 ...

  4. 2022-2-9 Leetcode 925.长按键入

    第一反应用哈希表,但是不行 class Solution {public:bool isLongPressedName(string name, string typed) {if(name.size ...

  5. leetcode 925. 长按键入

    题目描述: 你的朋友正在使用键盘输入他的名字 name.偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次. 你将会检查键盘输入的字符 typed.如果它对应的可能是你的朋友的 ...

  6. 925. Long Pressed Name 长按键入

    你的朋友正在使用键盘输入他的名字 name.偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次. 你将会检查键盘输入的字符 typed.如果它对应的可能是你的朋友的名字(其中一 ...

  7. taoqick 搜索自己CSDN博客

    L1 L2正则化和优化器的weight_decay参数 kaiming初始化的推导 Pytorch动态计算图 Pytorch自动微分机制 PyTorch中在反向传播前为什么要手动将梯度清零? 通俗讲解 ...

  8. Leetcode算法题-解法转载

    版权声明:本文为博主原创文章,未经博主允许不得转载.    https://blog.csdn.net/fuxuemingzhu/article/details/85112591 作者: 负雪明烛 i ...

  9. LeetCode题解目录

    最新更新于2020.11.27 前往LeetCode主页. 前往GitHub源码.(服务器原因,暂停同步.) 前往码云主页. 已解决 456/1878 - 简单353 中等 90 困难 13 2020 ...

最新文章

  1. input添加disabled属性出现的移动端兼容问题
  2. boost::mp11::integer_sequence相关用法的测试程序
  3. ie 7 beta 2出来了
  4. JM8.5中的7种宏块模式问题 - zhoujunming的专栏 - CSDN博客
  5. oracle 练习 50_萨克斯每天需要练习内容
  6. 如何做好一位合格qc_如何管理好生产质量?
  7. JqGrid3.6最终版本今天发布了
  8. win10家庭版远程桌面_win10 家庭版使用RDPWrap开通远程桌面服务
  9. 学者:比特币暴涨有合理性但仍应警惕其风险
  10. hdu2846(字典树)
  11. iOS网络加载图片缓存与SDWebImage
  12. golang test测试使用
  13. java基础面试题84道
  14. dw新建一个html网页,Dreamweaver创建网页的基本方法
  15. 文件怎么设置密码?一文带你看到文件加密的方法
  16. 树莓派raspios(原raspbian)下载地址
  17. 2018 DDoS攻击加剧,闻“D”色变的无力困境,我们要怎么办
  18. 深入理解C语言中两级指针(char **pptr)的参数的用法
  19. c语言宴席排位置,图解中式婚宴主桌安排技巧 结婚宴席座次安排有讲究
  20. 不正确站立会_站立式办公桌可能(不一定)挽救您的生命

热门文章

  1. 复试口语(三)常见问题与回答-喜欢的课程-介绍家乡-家庭情况
  2. 鸟哥的服务器《十四》OpenSSL
  3. 分享给你一个酷炫的前端组件库,还不用起来?
  4. 【计算机二级Python】模拟试卷第2套选择题
  5. 全程软件测试之测试需求分析与计划
  6. Java 习题2 参考答案及解析(2)
  7. B2B电商详解:从B2b网站到B2B网站,企业级电商如何做好?
  8. 终于有人把 Java代理讲清楚了,万字详解!
  9. DevExpress TileControl TileItem圆角
  10. Powershell批量禁用指定用户及将禁用用户移动到指定OU