Premium Only Content
2981. Find Longest Special Substring That Occurs Thrice I
You are given a string s that consists of lowercase English letters.
A string is called special if it is made up of only a single character. For example, the string "abc" is not special, whereas the strings "ddd", "zz", and "f" are special.
Return the length of the longest special substring of s which occurs at least thrice, or -1 if no special substring occurs at least thrice.
A substring is a contiguous non-empty sequence of characters within a string.
Example 1:
Input: s = "aaaa"
Output: 2
Explanation: The longest special substring which occurs thrice is "aa": substrings "aaaa", "aaaa", and "aaaa".
It can be shown that the maximum length achievable is 2.
Example 2:
Input: s = "abcdef"
Output: -1
Explanation: There exists no special substring which occurs at least thrice. Hence return -1.
Example 3:
Input: s = "abcaba"
Output: 1
Explanation: The longest special substring which occurs thrice is "a": substrings "abcaba", "abcaba", and "abcaba".
It can be shown that the maximum length achievable is 1.
Constraints:
3 <= s.length <= 50
s consists of only lowercase English letters.
class Solution {
public:
int maximumLength(string s) {
const int n = s.length();
int ans = -1;
int runningLen = 0;
char prevLetter = '@';
// counts[i][j] := the frequency of ('a' + i) repeating j times
vector<vector<int>> counts(26, vector<int>(n + 1));
for (const char c : s)
if (c == prevLetter) {
++counts[c - 'a'][++runningLen];
} else {
runningLen = 1;
++counts[c - 'a'][runningLen];
prevLetter = c;
}
for (const vector<int>& count : counts)
ans = max(ans, getMaxFreq(count, n));
return ans;
}
private:
// Returns the maximum frequency that occurs more than three times.
int getMaxFreq(const vector<int>& count, int maxFreq) {
int times = 0;
for (int freq = maxFreq; freq >= 1; --freq) {
times += count[freq];
if (times >= 3)
return freq;
}
return -1;
}
};
-
LIVE
FreshandFit
2 hours agoJoe Budden Arrested For Being A Perv! Tesla Cybertruck Explosion
4,972 watching -
DVR
Kim Iversen
5 hours agoNew Year, New PSYOP?: The Fort Bragg Connection In The New Years Terror Attacks
14.2K67 -
1:41:18
Glenn Greenwald
4 hours agoTerror Attacks Exploited To Push Unrelated Narratives; Facing Imminent Firing Squad, Liz Cheney Awarded Presidential Medal | SYSTEM UPDATE #381
51K64 -
LIVE
Man in America
6 hours ago🔴 LIVE: Terror Attacks or False Flags? IT DOESN'T ADD UP!!!
1,378 watching -
1:02:38
Donald Trump Jr.
8 hours agoNew Year’s Terror, Latest Breaking News with Sebastian Gorka | TRIGGERED Ep.204
128K271 -
59:59
The StoneZONE with Roger Stone
3 hours agoAfter Years of Targeting Trump, FBI and DOJ are Unprepared to Stop Terror Attacks | The StoneZONE
19.2K5 -
1:26:42
Leonardaisfunny
2 hours ago $0.79 earnedH-1b Visas: Infinity Indians
5.06K17 -
1:08:33
Josh Pate's College Football Show
6 hours ago $0.33 earnedPlayoff Reaction Special: Ohio State Owns Oregon | Texas Survives | UGA vs Notre Dame Takeaways
4.9K1 -
58:04
Kimberly Guilfoyle
6 hours agoFBI's Terror Response Failures, Live with Steve Friend & Kyle Seraphin | Ep. 185
84.8K36 -
2:15:01
WeAreChange
7 hours agoMassive Developments In Vegas Investigation! UNREAL DETONATION, Shocking Details Emerge!
92.2K27