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

पायथन में DI स्ट्रिंग मैच

मान लीजिए कि हमारे पास एक स्ट्रिंग S है जिसमें केवल "I" (वृद्धि को दर्शाने के लिए) या "D" (कमी को दर्शाने के लिए) है, मान लें कि N =S का आकार है। हमें [0, 1, ... का कोई भी क्रमपरिवर्तन A वापस करना होगा। , N] ऐसा है कि सभी के लिए मैं श्रेणी 0, ..., N-1 -

. में
  • यदि S[i] "I" है, तो A[i]
  • अन्यथा जब S[i] "D" हो, तो A[i]> A[i+1]

इसलिए, यदि इनपुट "IDID" जैसा है, तो आउटपुट [0,4,1,3,2]

. होगा

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • A :=0 से N तक की सूची जहां N, S के आकार का है।
  • res =एक खाली सूची
  • S में प्रत्येक तत्व j के लिए, करें
    • यदि j, I है, तो A से अंतिम तत्व हटाएं और res में डालें
    • अन्यथा ए के पहले तत्व को हटा दें और रेस में डालें
  • रिटर्न रेस

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

उदाहरण

class Solution:
   def diStringMatch(self, S):
      A=[i for i in range(len(S)+1)]
   return [A.pop((j=='I')-1) for j in S]+A
ob = Solution()
print(ob.diStringMatch("IDID"))

इनपुट

"IDID"

आउटपुट

[0, 4, 1, 3, 2]

  1. पायथन में उद्धरण

    पाइथन सिंगल (), डबल () और ट्रिपल ( या ) कोट्स को स्ट्रिंग लिटरल को निरूपित करने के लिए स्वीकार करता है, जब तक कि एक ही प्रकार का उद्धरण स्ट्रिंग को शुरू और समाप्त करता है। ट्रिपल कोट्स का उपयोग स्ट्रिंग को कई लाइनों में फैलाने के लिए किया जाता है। उदाहरण के लिए, निम्नलिखित सभी कानूनी हैं - word = &

  1. पायथन में स्ट्रिंग घुमाएं

    मान लीजिए हमारे पास दो तार हैं, ए और बी। हम स्ट्रिंग ए को घुमाएंगे और जांचेंगे कि यह घूर्णन की किसी भी स्थिति में बी से मेल खाता है या नहीं, यदि ऐसा है तो सही है, अन्यथा गलत है। उदाहरण के लिए, यदि A =abcde, और B =bcdea तो उत्तर सही होगा, क्योंकि A को घुमाने के बाद B में बदला जा सकता है। इसे हल करने

  1. पायथन में रिवर्स स्ट्रिंग

    मान लीजिए कि हमारे पास वर्णों की एक सरणी है। हमें बिना किसी अतिरिक्त स्थान का उपयोग किए स्ट्रिंग को उल्टा करना होगा। इसलिए यदि स्ट्रिंग [H, E, L, L, O] की तरह है, तो आउटपुट [O, L, L, E, एच] इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - शुरू करने के लिए दो संकेत लें =0 और अंत =स्ट्रिंग की लंबाई