मान लीजिए कि हमारे पास एक लोअरकेस स्ट्रिंग है जिसमें केवल दो अक्षर a और b हैं। हमें यह जांचना है कि क्या क्रमागत a के प्रत्येक समूह के बाद समान लंबाई के क्रमागत b का समूह आता है।
इसलिए, यदि इनपुट s ="abaaabbbaabbabbab" जैसा है, तो आउटपुट ट्रू होगा, क्योंकि सभी समूह (ab), (aaabbb), (aabb), (aabb), (ab) हैं।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- a_count :=0, string_len :=s का आकार
- मैं :=0
- जबकि मैं
- जबकि मैं
- a_count :=a_count + 1
- i :=i + 1
- जबकि मैं
- झूठी वापसी
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
def solve(s): a_count = 0 string_len = len(s) i = 0 while i < string_len: while i < string_len and s[i] == 'a': a_count += 1 i += 1 while i < string_len and s[i] == 'b': a_count -= 1 i += 1 if a_count != 0: return False return True s = "abaaabbbaabbaabbab" print(solve(s))
इनपुट
"abaaabbbaabbaabbab"
आउटपुट
True