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

पायथन में जांचें कि क्या एक स्ट्रिंग को दूसरी स्ट्रिंग में घड़ी की दिशा में अक्षरों को शिफ्ट करके बदला जा सकता है


मान लीजिए हमारे पास दो स्ट्रिंग्स p और q हैं, और एक संख्या r भी है, हमें जांचना है कि क्या p को q में घड़ी की दिशा में कुछ वर्णों को अधिकतम r बार शिफ्ट करके बदला जा सकता है। उदाहरण के लिए, "c" को "e" में 2 घड़ी की दिशा में शिफ्ट करके बदला जा सकता है।

उदाहरण के लिए, यदि इनपुट है p = "abc", q = "ccc", r = 3, तो आउटपुट होगा True, क्योंकि हम "a" को "c" में 2 घड़ी की दिशा में शिफ्ट करके और फिर "b" को "c" में 1 घड़ी की दिशा में शिफ्ट करके, कुल 3 शिफ्ट में बदल सकते हैं।

हल करने के चरण

  • यदि a का आकार b के आकार के समान नहीं है, तो False लौटाएं।
  • यदि k == 0 और a != b, तो False लौटाएं।
  • su := 0
  • i को 0 से a के आकार तक:
    • v := b[i] का ASCII - a[i] का ASCII
    • यदि v >= 0, तो su := su + v।
    • अन्यथा, su := su + v + 26।
    • यदि su > k, तो False लौटाएं।
  • True लौटाएं।

उदाहरण

class Solution:
    def solve(self, a, b, k):
        if len(a) != len(b):
            return False
        if k == 0 and a != b:
            return False
        su = 0
        for i in range(len(a)):
            v = ord(b[i]) - ord(a[i])
            if v >= 0:
                su += v
            else:
                su += v + 26
            if su > k:
                return False
        return True

ob = Solution()
print(ob.solve("abc", "ccc", 3))

इनपुट

"abc", "ccc", 3

आउटपुट

True
  1. - पायथन में जांचें कि क्या एक स्ट्रिंग को दूसरी स्ट्रिंग में 1-टू-1 मैप किया जा सकता है

    मान लीजिए हमारे पास दो लोअरकेस स्ट्रिंग्स s और t हैं, हमें जांचना है कि क्या हम s के प्रत्येक अक्षर के लिए दूसरे अक्षर (शायद वही अक्षर) में 1-टू-1 मैपिंग बना सकते हैं ताकि s को t में मैप किया जा सके। (वर्णों का क्रम नहीं बदलेगा)। उदाहरण के लिए, यदि इनपुट है s = papa, t = lili, तो आउटपुट होगा True,

  1. पायथन प्रोग्राम: जांचें कि स्ट्रिंग में सभी यूनिक कैरेक्टर्स हैं या नहीं पायथन प्रोग्राम: जांचें कि स्ट्रिंग में सभी यूनिक कैरेक्टर्स हैं या नहीं

    इस लेख में, हम दिए गए प्रॉब्लम स्टेटमेंट को हल करने के समाधान और दृष्टिकोण के बारे में सीखेंगे। प्रॉब्लम स्टेटमेंट एक स्ट्रिंग इनपुट दिए जाने पर, हमें यह ढूंढना होगा कि स्ट्रिंग में सभी यूनिक कैरेक्टर्स हैं या नहीं। दृष्टिकोण हम बूलियन वैल्यूज़ का एक ऐरे बनाएंगे, जहां इंडेक्स i पर वेरिएबल फ्लैग

  1. - पायथन में जांचें कि क्या स्ट्रिंग को फ्लोट में बदला जा सकता है

    स्ट्रिंग को फ्लोट में पार्स करने के लिए, आप निम्नलिखित का उपयोग कर सकते हैं: try: print(float(112.15)) except ValueError: print(पार्स नहीं कर सकते) यह आपको आउटपुट देगा: 112.15 यदि आपका स्ट्रिंग पार्स नहीं किया जा सकता, तो यह एक वैल्यू एरर फेंकेगा। आप एक रैपर मेथड बना सकते हैं जो आपके द्वारा