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

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

题目:

题解:

#define MAX(a, b) ((a) > (b) ? (a) : (b))

int findSubstringInWraproundString(char * p) {
    int dp[26];
    int len = strlen(p);
    memset(dp, 0, sizeof(dp));
    int k = 0;
    for (int i = 0; i < len; ++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);
    }
    int res = 0;
    for (int i = 0; i < 26; i++) {
        res += dp[i];
    }
    return res;
}

http://www.kler.cn/news/341013.html

相关文章:

  • Wasserstein距离
  • 支持向量机-笔记
  • Ethernet IP 转 Profinet网关在流量计中的应用
  • vmware下ubuntu18.04中使用笔记本的摄像头
  • 传统的机器学习在自然语言处理领域中对比深度学习和大语言模型有哪些优势?
  • 鸿蒙fork()功能
  • Openstack 安装教程
  • 论文阅读(十二):Attention is All You Need
  • 单片机(学习)2024.10.9
  • LeetCode讲解篇之300. 最长递增子序列
  • 【含开题报告+文档+PPT+源码】基于SpringBoot+Vue的新能源停车场管理系统
  • Leetcode 24 Swap Nodes in Pairs
  • STM32入门
  • 汽车车轮平衡块行业前景:预计2030年全球市场规模将达到10亿美元
  • STM32 HAL库
  • SQL进阶技巧:SQL中的正则表达式应用?
  • 浙大数据结构:08-图8 How Long Does It Take
  • P1903 [国家集训队] 数颜色 / 维护队列
  • 叉车毫米波雷达防撞技术,保护叉车作业安全
  • 图像分类-demo(Lenet),tensorflow和Alexnet