Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में दी गई स्ट्रिंग से गुड स्ट्रिंग खोजने का प्रोग्राम

मान लीजिए हमारे पास एक स्ट्रिंग s है जिसमें लोअरकेस और अपरकेस अंग्रेजी अक्षर हैं। हम एक स्ट्रिंग को गुड स्ट्रिंग मानते हैं जिसमें कोई भी दो आसन्न वर्ण s[i] और s[i+1] ऐसे नहीं हैं जहां:

  • 0 <= i <= s की लंबाई - 2
  • s[i] लोअरकेस में है और s[i+1] वही अक्षर अपरकेस में है या इसके विपरीत।

स्ट्रिंग को गुड स्ट्रिंग में बदलने के लिए, हम उन दो आसन्न वर्णों को चुन सकते हैं जो स्ट्रिंग को खराब बनाते हैं और उन्हें हटा सकते हैं। हम इस प्रक्रिया को तब तक जारी रखते हैं जब तक स्ट्रिंग गुड न हो जाए (एक खाली स्ट्रिंग भी गुड हो सकती है)। हमें स्ट्रिंग को गुड बनाने के बाद की स्ट्रिंग ढूंढनी है।

उदाहरण के लिए, यदि इनपुट s = "popPpulaBbr" है, तो आउटपुट "popular" होगा, क्योंकि पहले या तो "pP" या "Pp" हटाएं और फिर "Bb" हटाएं।

समाधान के चरण

  • res := एक नई सूची
  • s के प्रत्येक वर्ण ch के लिए:
  • यदि res खाली नहीं है और res का अंतिम तत्व ch के समान है (केस इन्सेंसिटिव), तो res से अंतिम तत्व हटाएं
  • अन्यथा, ch को res के अंत में जोड़ें
  • res में मौजूद प्रत्येक तत्व को जोड़कर वापस करें

उदाहरण (पायथन)

def solve(s):
    res = []
    for ch in s:
        if res and res[-1] != ch and res[-1].lower() == ch.lower():
            res.pop()
        else:
            res.append(ch)
    return ''.join(res)

s = "popPpulaBbr"
print(solve(s))

इनपुट

"popPpulaBbr"

आउटपुट

popular
  1. - Python प्रोग्राम से स्ट्रिंग से डिक्शनरी बनाना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक स्ट्रिंग इनपुट दी गई है, हमें इसे डिक्शनरी प्रकार में बदलने की आवश्यकता है। यहां हम बिल्ट-इन dict() फ़ंक्शन का उपयोग किए बिना समस्या को हल करने के लिए दो विधियों पर चर्चा करेंगे। विधि 1 - eval() मेथड का उपयो

  1. - पायथन प्रोग्राम: दी गई स्ट्रिंग से सभी संभावित वैलिड IP एड्रेस जनरेट करना

    स्ट्रिंग दी गई है। स्ट्रिंग में केवल डिजिट्स हैं। हमारा कार्य सभी संभावित वैलिड IP एड्रेस कॉम्बिनेशन्स चेक करना है।यहां पहले हम स्ट्रिंग की लंबाई चेक करते हैं फिर . से स्प्लिट करते हैं। फिर हम . के विभिन्न कॉम्बिनेशन्स चेक करते हैं।उदाहरणInput: 255011123222 Its not a valid IP address. Input: 2550113

  1. - पायथन प्रोग्राम: स्ट्रिंग में मिरर कैरेक्टर्स खोजना

    एक यूजर इनपुट स्ट्रिंग और पोजिशन दी गई है, उस पोजिशन से हमें स्ट्रिंग की लंबाई तक अल्फाबेटिकल ऑर्डर में कैरेक्टर्स को मिरर करना है। इस ऑपरेशन में, हम a को z में, b को y में, c को x में, d को w में बदलते हैं और इसी तरह, यानी पहला कैरेक्टर लास्ट बन जाता है और इसी तरह।Input: p = 3 Input string = python