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

पायथन में जांचें कि एक तत्व बदलकर दोनों सरणियों को बराबर बनाया जा सकता है या नहीं


मान लीजिए हमारे पास दो सरणियां nums1 और nums2 और एक मान k है। हमें जांचना है कि क्या nums1 के किसी एक तत्व को [-k, k] रेंज के किसी मान से जोड़कर (केवल एक बार) दोनों सरणियों को बराबर बनाया जा सकता है।

उदाहरण के लिए, यदि nums1 = [5, 7, 11], nums2 = [5, 5, 11], k = 8 है, तो आउटपुट True होगा क्योंकि हम nums1[1] में -2 जोड़ सकते हैं (जो [-8, 8] की रेंज में है) जिससे यह 5 हो जाएगा और nums2 के बराबर हो जाएगा।

हल करने का तरीका

  1. nums1 और nums2 को सॉर्ट करें
  2. temp := False, idx := -1
  3. दोनों सरणियों की तुलना करें: यदि किसी इंडेक्स पर मान अलग हैं:
    • यदि पहले से कोई अंतर मिला था (temp True है), तो False लौटाएं
    • temp := True, idx := वर्तमान इंडेक्स
  4. यदि कोई अंतर नहीं मिला (idx = -1) या अंतर का निरपेक्ष मान ≤ k है, तो True लौटाएं
  5. अन्यथा False लौटाएं

उदाहरण कोड

def solve(nums1, nums2, k):
    nums1.sort()
    nums2.sort()
    temp = False
    idx = -1
    for i in range(len(nums1)):
        if nums1[i] != nums2[i]:
            if temp:
                return False
            temp = True
            idx = i
    if idx == -1 or abs(nums1[idx] - nums2[idx]) <= k:
        return True
    return False

nums1 = [5, 7, 11]
nums2 = [5, 5, 11]
k = 8
print(solve(nums1, nums2, k))

इनपुट

[5, 7, 11], [5, 5, 11], 8

आउटपुट

True
  1. - पायथन में सूची तत्वों को बाएं या दाएं से निचोड़कर एकल तत्व बनाने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, हमें इसे बाएं और दाएं दोनों तरफ से तब तक निचोड़ना है जब तक एक शेष तत्व नहीं बचता। हम प्रत्येक चरण पर राज्यों को लौटाएंगे। उदाहरण के लिए, यदि इनपुट है nums = [10,20,30,40,50,60], तो आउटपुट होगा: [ [10, 20, 30, 40, 50, 60], [30, 30, 40, 110],

  1. - पायथन में टुपल्स के टुपल में तत्व की उपस्थिति जांचें

    पायथन टुपल्स नेस्टेड हो सकते हैं। हमारे पास एक टुपल हो सकता है जिसके तत्व भी टुपल्स हों। इस लेख में हम देखेंगे कि कैसे पता लगाया जाए कि कोई दिया गया मान टुपल्स के टुपल में एक तत्व के रूप में मौजूद है या नहीं। any के साथ any फंक्शन का उपयोग यह जांचने के लिए किया जा सकता है कि कोई दिया गया मान टुपल म

  1. पायथन प्रोग्राम: जांचें कि क्या ऐरे में सभी डिजिट्स का उपयोग करके 3 से विभाज्य संख्या बनाना संभव है पायथन प्रोग्राम: जांचें कि क्या ऐरे में सभी डिजिट्स का उपयोग करके 3 से विभाज्य संख्या बनाना संभव है

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