मान लीजिए कि हमारे पास एक स्ट्रिंग s है, हमें समान वर्णों वाले सबसे लंबे सबस्ट्रिंग की लंबाई ज्ञात करनी है।
इसलिए, यदि इनपुट "abbbaccabbba" जैसा है, तो आउटपुट 4 होगा, क्योंकि इसमें लगातार चार बी होते हैं।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- यदि s का आकार 0 है, तो
- वापसी 0
- s :=s रिक्त स्थान को संयोजित करें
- सीटी:=1, मंदिर:=1
- i के लिए 0 से s -2 के आकार के लिए, करते हैं
- यदि s[i], s[i+1] के समान है, तो
- मंदिर:=मंदिर + 1
- अन्यथा,
- ct:=अधिकतम tem और ct
- टेम:=1
- यदि s[i], s[i+1] के समान है, तो
- वापसी सीटी
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
class Solution: def solve(self, s): if len(s)==0: return 0 s+=' ' ct=1 tem=1 for i in range(len(s)-1): if s[i]==s[i+1]: tem+=1 else: ct=max(tem,ct) tem=1 return ct ob = Solution() print(ob.solve("abbbaccabbbba"))
इनपुट
"abbbaccabbbba"
आउटपुट
4