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

पायथन में लेक्सिकोग्राफिकली सबसे छोटा नॉन-पैलिंड्रोमिक स्ट्रिंग खोजने का प्रोग्राम


मान लीजिए हमारे पास एक स्ट्रिंग s है जो पैलिंड्रोम है। हमें एक वर्ण बदलना है ताकि s अब पैलिंड्रोम न रहे और यह लेक्सिकोग्राफिकली सबसे छोटी हो।

उदाहरण के लिए, यदि इनपुट s = "level" है, तो आउटपुट "aevel" होगा, क्योंकि हम पहले "l" को "a" में बदलकर लेक्सिकोग्राफिकली सबसे छोटी स्ट्रिंग प्राप्त कर सकते हैं जो पैलिंड्रोम नहीं है।

समाधान दृष्टिकोण

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

  • i को 0 से len(s)//2 तक:
    • यदि s[i] != 'a':
      • s को वर्णों की सूची में बदलें
      • s[i] := 'a'
      • सभी वर्णों को जोड़कर लौटाएं
  • यदि सभी पहले आधे 'a' हैं:
    • s को सूची में बदलें
    • अंतिम वर्ण को 'b' बनाएं
    • जोड़कर लौटाएं

उदाहरण कोड

class Solution:
    def solve(self, s):
        for i in range(len(s)//2):
            if s[i] != "a":
                s = list(s)
                s[i] = "a"
                return "".join(s)
        s = list(s)
        s[-1] = "b"
        return "".join(s)

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

इनपुट

"level"

आउटपुट

aevel

  1. Python प्रोग्राम से सूची में सबसे छोटी संख्या खोजना Python प्रोग्राम से सूची में सबसे छोटी संख्या खोजना

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

  1. - पायथन प्रोग्राम: 2D ऐरे में k-वां सबसे छोटा एलिमेंट खोजना

    एक n×n यूजर इनपुट इंटीजर मैट्रिक्स दिया गया है और k का मान। हमारा कार्य 2D ऐरे में k-वां सबसे छोटा एलिमेंट ढूंढना है। यहां हम heapq मॉड्यूल का उपयोग करते हैं। पायथन में हीप क्यू (या heapq) उपलब्ध है। इस मॉड्यूल की तकनीक यह है कि हर बार हीप एलिमेंट का सबसे छोटा पॉप किया जाता है (मिन हीप)। nsmallest()

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

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