当前位置: 首页 > news >正文

C++ | Leetcode C++题解之第467题环绕字符串中唯一的子字符串

题目:

题解:

class Solution {
public:
    int findSubstringInWraproundString(string p) {
        vector<int> dp(26);
        int k = 0;
        for (int i = 0; i < p.length(); ++i) {
            if (i && (p[i] - p[i - 1] + 26) % 26 == 1) { // 字符之差为 1 或 -25
                ++k;
            } else {
                k = 1;
            }
            dp[p[i] - 'a'] = max(dp[p[i] - 'a'], k);
        }
        return accumulate(dp.begin(), dp.end(), 0);
    }
};

相关文章:

  • PyQt入门指南四 事件处理机制详解
  • 【C语言】值传递和指针传递
  • 【Linux】第一个小程序——进度条实现
  • 遥感影像-语义分割数据集:sar水体数据集详细介绍及训练样本处理流程
  • Minio工具类封装
  • Java 运算符(详细介绍)
  • C++-容器适配器- stack、queue、priority_queue和仿函数
  • 鸿蒙next系统如何进行测试APP安装
  • 人工智能时代,程序员如何保持核心竞争力?
  • 云手机哪款好用?2024年云手机推荐对比指南
  • 【计算机网络】网络相关技术介绍
  • springboot cache
  • Python精选200Tips:186-190
  • Android SystemUI组件(08)睡眠灭屏 锁屏处理流程
  • 基于MATLAB实现2ASK调制解调仿真(结果超详细)
  • 刷题 二叉树
  • 行盒的截断样式 box-decoration-break
  • 计算机网络思维导图
  • Python绘制--绘制心形曲线
  • 无人机之飞行算法篇
  • 竞彩湃|德甲欧冠资格竞争白热化,伯恩茅斯主场迎恶战
  • 印巴开始互袭军事目标,专家:冲突“螺旋式升级”后果或不可控
  • 时隔14个月北京怀柔区重启供地,北京建工以3.59亿元摘得
  • 央行:中国政府债务扩张仍有可持续性
  • 教育部答澎湃:2025世界数字教育大会将发布系列重磅成果
  • 山东14家城商行中,仅剩枣庄银行年营业收入不足10亿