力扣 -- 467. 环绕字符串中唯一的子字符串

一、题目

二、解题步骤

下面是用动态规划的思想解决这道题的过程,相信各位小伙伴都能看懂并且掌握这道经典的动规题目滴。

三、参考代码

cpp 复制代码
class Solution {
public:
    int findSubstringInWraproundString(string s) {
        int n=s.size();
        vector<int> dp(n,1);
        int ret=0;
        for(int i=1;i<n;i++)
        {
            if(s[i]==s[i-1]+1||(s[i-1]=='z'&&s[i]=='a'))
            {
                dp[i]+=dp[i-1];
            }
        }

        //去重
        int arr[26]={0};
        for(int i=0;i<n;i++)
        {
            arr[s[i]-'a']=max(dp[i],arr[s[i]-'a']);
        }
        for(const auto& e:arr)
        {
            ret+=e;
        }
        return ret;
    }
};
相关推荐
xiaoye-duck3 分钟前
《C++ 项目:手写大模型接入 SDK》云端 API 调用基础与 Apifox 调试实战
网络·c++·语言模型
坤坤子吖9 分钟前
Linux 线程同步与互斥——条件变量与线程同步
linux·开发语言·c++·笔记·学习
damoluomu9 分钟前
国产 Java CMS 的协议和坑,讲清楚
java·开发语言
潜创微科技12 分钟前
CH591:成本优化的青稞 RISC-V 无线 MCU
c语言·单片机·risc-v·低延迟·沁恒·青稞
杜 硕13 分钟前
从零开始的C++生活——第二讲——03
c++·生活
Wang's Blog17 分钟前
Java 项目实战: 交友项目 - 黑名单:分页查询黑名单
java·开发语言·交友
mklpo14720 分钟前
python3:如何按照实际执行需求导入模块,而不是启动时统一导入?(Python3.15)。2026-10-20
开发语言·人工智能·python
蚰蜒螟21 分钟前
从 Java write 到磁盘扇区:一次写入操作的完整内核穿越之旅
java·开发语言
u01110267532 分钟前
图片生成任务的日志记录与敏感信息取舍
前端·图像处理·算法·ai作画
en.en..33 分钟前
volatile 关键字整理(嵌入式 C 标准)
java·开发语言