刷题记录:LeetCode 925.长按键入

题目:

你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。

你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字(其中一些字符可能被长按),那么就返回 True

复制代码
class Solution {
public:
    bool isLongPressedName(string name, string typed) {
        int nn = 0;
        int tt = 0;
        while (nn < name.size() || tt < typed.size())
        {
            if (name[nn] == typed[tt])
            {
                nn++;
                tt++;
            }
            else
            {
                if (tt == 0) return false;
                else 
                {
                    while (tt < typed.size() && typed[tt - 1] == typed[tt]) tt++;
                    if (name[nn] != typed[tt]) return false;
                    else 
                    {
                        tt++;
                        nn++;
                    }
                }
            }
        }
        if (tt < typed.size()) return false;
        return true;
    }
};
相关推荐
少许极端2 分钟前
算法奇妙屋(五十二)-备战+复习2
java·算法
luj_17682 分钟前
硝酸核关联假说缺乏实验证据
c语言·开发语言·c++·经验分享·算法
想你依然心痛6 分钟前
Isaac Sim vs MuJoCo vs PyBullet:机器人仿真器选型终极指南(2026版)
java·开发语言·机器人
一个儒雅随和的男子6 分钟前
MQTT如何保证消息的可靠性
java·开发语言
再玩一会儿看代码12 分钟前
Java浅拷贝和深拷贝理解笔记
java·linux·开发语言·笔记·python·学习
草莓熊Lotso14 分钟前
【Linux网络】深入理解 HTTP 协议(三):静态资源服务、状态码与重定向实战
linux·运维·服务器·网络·c++·http
爱吃羊的老虎20 分钟前
【JAVA】Java微服务—分布式事务框架Seata
java·开发语言
Wonderful U26 分钟前
基于Python+Django的智能在线考试系统:从题库管理到自动阅卷的全流程实战
开发语言·python·django
青梅橘子皮29 分钟前
Linux---虚拟地址空间
linux·运维·算法
无忧.芙桃29 分钟前
数据结构之单链表
c语言·开发语言·数据结构