diff --git a/Greedy/3458.Select-K-Disjoint-Special-Substrings/3458.Select-K-Disjoint-Special-Substrings_v2.cpp b/Greedy/3458.Select-K-Disjoint-Special-Substrings/3458.Select-K-Disjoint-Special-Substrings_v2.cpp new file mode 100644 index 000000000..1cecdda41 --- /dev/null +++ b/Greedy/3458.Select-K-Disjoint-Special-Substrings/3458.Select-K-Disjoint-Special-Substrings_v2.cpp @@ -0,0 +1,60 @@ +class Solution { +public: + bool maxSubstringLength(string s, int k) + { + int n = s.size(); + vector>pos(26); + for (int i=0; i>intervals; + for (int letter=0; letter<26; letter++) + { + if (pos[letter].empty()) continue; + int start = pos[letter][0]; + int i = start; + int far = pos[letter].back(); + + bool flag = true; + while (i<=far) + { + far = max(far, pos[s[i]-'a'].back()); + if (pos[s[i]-'a'][0]=k; + } + + bool contains(paira, pairb) + { + return a.firstb.second; + } + + int helper(vector> &intervals) { + int n = intervals.size(); + vectorcheck(n, 1); + for (int i=0; i

AltStyle によって変換されたページ (->オリジナル) /