(M)Dynamic Programming:467. Unique Substrings in Wraparound String
来源:互联网 发布:负反馈放大器实验数据 编辑:程序博客网 时间:2024/06/07 09:06
参考大神的分析:
我们看abcd这个字符串,以d结尾的子字符串有abcd, bcd, cd, d,那么我们可以发现bcd或者cd这些以d结尾的字符串的子字符串都包含在abcd中,那么我们知道以某个字符结束的最大字符串包含其他以该字符结束的字符串的所有子字符串,说起来很拗口,但是理解了我上面举的例子就行。那么题目就可以转换为分别求出以每个字符(a-z)为结束字符的最长连续字符串就行了,我们用一个数组cnt记录下来,最后在求出数组cnt的所有数字之和就是我们要的结果啦。
class Solution {public: int findSubstringInWraproundString(string p) { vector<int> cnt(26, 0); int len = 0; for (int i = 0; i < p.size(); ++i) { if (i > 0 && (p[i] == p[i - 1] + 1 || p[i - 1] - p[i] == 25)) { ++len; } else { len = 1; } cnt[p[i] - 'a'] = max(cnt[p[i] - 'a'], len); } return accumulate(cnt.begin(), cnt.end(), 0); }};
阅读全文
0 0
- (M)Dynamic Programming:467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String**
- 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- Leetcode-467. Unique Substrings in Wraparound String
- Leetcode 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- 【LeetCode】467. Unique Substrings in Wraparound String
- Leetcode-467. Unique Substrings in Wraparound String
- [LeetCode]467. Unique Substrings in Wraparound String
- **LeetCode 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String -Medium
- 【LeetCode】467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- 467. Unique Substrings in Wraparound String
- Windows下安装git
- mnist文件提取成bmp(matlab代码)
- hdu 4622 Reincarnation(hash)
- 动态规划-368. Largest Divisible Subset
- java自动创建多层目录
- (M)Dynamic Programming:467. Unique Substrings in Wraparound String
- 【干货】PS通道精讲
- HDOJ2023_求平均成绩
- 51nod 1354 选数字 (01背包变形)
- 利用secondarynamenode 回复namenode
- Queue中offer/add,poll/remove,peek/element区别
- CyclicBarrier 栅栏的使用
- SpringMVC的REST风格开发
- 搭建Docker Swarm集群实战(三)(swarm mode)