leetcode 1750. 删除字符串两端相同字符后的最短长度

题目如下

数据范围

示例

复制代码
本题是普通的模拟题,只需要设置l r两个指针并且让两个指针不断向内遍历最后得到差值即可,不用真正修改字符串s。

通过代码

cpp 复制代码
class Solution {
public:
    int minimumLength(string s) {
        int l = 0,r = s.size() - 1;
        int n = r + 1;
        char t;
        if(r == 0)return 1;
        if(s[l] != s[r])return r + 1;
        t = s[0];
        while(true){
            while(true){
          
                if(l + 1 == r)return 0;
                if(s[l + 1] == t)l++;
                else break;
         
            }
              while(true){
                if(l + 1 == r)return 0;
                if(s[r - 1] == t)r--;
                else break;
             
            }

            if(s[l + 1] != s[r - 1])return r - l - 1;
            l++;r--;
            if(l == r)return 1;
            t = s[l];

        }
        return 0;//while 循环已经是全部情况了 其实程序走不到这里
    }
};
相关推荐
aqiu1111112 小时前
【C++算法打怪专栏】8. 字符串转换整数 (atoi)
开发语言·c++·算法
h39747 小时前
DirectShow过滤器开发-视频源过滤器
c++·windows·音视频·directshow
程序猿编码8 小时前
榨干 RTX5090 算力!Qwen3 专用单卡推理引擎,手写C++/CUDA 算子实现 MTP 推测解码
开发语言·c++·大模型推理·qwen3·多模态推理
西飘客9 小时前
vs 怎么根据dll 生成lib文件
c++·qt
程序员老陆10 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
信奥卷王10 小时前
[GESP202609 六级] 分树规划
算法
夏幻灵10 小时前
LeetCode 21:合并两个有序链表——双指针与哑节点详解
算法·leetcode·链表
徐小黑ACG12 小时前
Golang 基础05 结构体struct
开发语言·算法·golang
码完就睡12 小时前
数据结构——红黑树
数据结构