刷题记录: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;
    }
};
相关推荐
LabVIEW开发几秒前
LabVIEW 局部变量与数据流:这道 CLAD 题为什么答案是 Undefined
java·开发语言·labview
地平线开发者3 分钟前
CLIP 的训练机制:从对比学习到图文对齐
深度学习·算法·自动驾驶
路溪非溪3 分钟前
C++标准库之智能指针
linux·开发语言·c++
hetao173383734 分钟前
2026-11-02 hetao1733837 的刷题记录
c++·算法
Geektec36 分钟前
IMU 选型完全指南:从硬件参数到算法融合的系统工程视角
算法·imu·陀螺仪·加速度计·元器件选型
CQU_JIAKE41 分钟前
11.2【A】
算法
衍生星球41 分钟前
【Java 语言】— 面向对象:构造方法(无参、有参构造)
java·开发语言
Tairitsu_H42 分钟前
[C++高阶数据结构·图论下] 最短路径:为什么“挑最小的”一定正确?
数据结构·c++·图论
yuniko-n1 小时前
【JVM】对象内存布局
java·开发语言·jvm
何中应1 小时前
【Go-1】变量&常量定义
开发语言·后端·golang