मान लीजिए कि हमारे पास एक स्ट्रिंग 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