力扣 -- 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;
    }
};
相关推荐
做怪小疯子几秒前
Leetcode刷题——链表就地反转
算法·leetcode·链表
仟濹12 分钟前
【算法打卡day22(2026-03-14 周六)今日算法or技巧:双指针 & 链表】9个题
数据结构·算法·链表·双指针
RechoYit20 分钟前
数学建模——评价与决策类模型
python·算法·数学建模·数据分析
leaves falling22 分钟前
Qt 项目:计算圆面积
开发语言·qt
xiaoye370823 分钟前
某大厂java面试题二面20260313
java·开发语言·spring
Full Stack Developme28 分钟前
Java -jar 命令 可以有哪些参数设置
java·开发语言·jar
地平线开发者34 分钟前
地平线 Sparse 多任务参考算法 SparseBevFusionMultitaskOE-V1.0
算法·自动驾驶
独隅44 分钟前
Python `with` 语句 (上下文管理器) 深度解析与避坑指南
开发语言·python
wsoz1 小时前
GCC编译
linux·c语言·嵌入式·gcc
做怪小疯子1 小时前
Python 基础学习
开发语言·python·学习