কম্পিউটার টিউটোরিয়াল

পাইথনে স্ট্রিং-এ 'programmingquestion' সাবসিকোয়েন্স খুঁজুন


मान लीजिए हमारे पास एक लोअरकेस स्ट्रिंग s है, हमें जांचना है कि क्या s के वर्णों का कोई उपअनुक्रम (subsequence) चुनना संभव है जैसे कि:

  1. किन्हीं दो क्रमागत वर्णों के सूचकांकों का अंतर समान हो
  2. वर्ण मिलकर "programmingquestion" 스트িং তৈরি করে

यदि इनपुट "pzrzozgzrzazmzmziznzgzqzuzezsztzizozn" जैसा है, तो आउटपुट होगा True

इसे हल करने के लिए हम निम्नलिखित चरणों का पालन करेंगे:

  • p := उन सूचकांकों की सरणी जहां 'p' मौजूद है
  • r := उन सूचकांकों की सरणी जहां 'r' मौजूद है
  • p में प्रत्येक j के लिए, करें:
    • r में प्रत्येक k के लिए, करें:
      • यदि k > j, तो
        • यदि s के उपस्ट्रिंग (सूचकांक j से अंत तक, k-j चरित्र छोड़कर) में "programmingquestion" है, तो
          • True लौटाएं
  • False लौटाएं

बेहतर समझ के लिए निम्नलिखित कार्यान्वयन देखें:

उदाहरण

class Solution:
    def solve(self, s):
        p = [i for i, c in enumerate(s) if c == "p"]
        r = [i for i, c in enumerate(s) if c == "r"]
        for j in p:
            for k in r:
                if k > j:
                    if "programmingquestion" in s[j:len(s):k-j]:
                        return True
        return False

ob = Solution()
s = "pzrzozgzrzazmzmziznzgzqzuzezsztzizozn"
print(ob.solve(s))

इनपुट

"pzrzozgzrzazmzmziznzgzqzuzezsztzizozn"

आउटपुट

True

  1. পাইথনে কোটেশন (Quotation in Python)

  2. পাইথনে স্ট্রিং রোটেশন যাচাই

  3. পাইথনে স্ট্রিং রিভার্স (ইন-প্লেস)

  4. পাইথনে casefold() স্ট্রিং মেথড