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

पायथन का उपयोग करके जांचें कि सरणी जोड़े k से विभाज्य हैं या नहीं


मान लीजिए हमारे पास nums नामक एक सरणी है, इसमें सम संख्या में तत्व हैं, और एक मान k है। हमें nums को ठीक n/2 जोड़ों में विभाजित करना है जैसे कि प्रत्येक जोड़ का योग k से विभाज्य हो। यदि हम ऐसा कर सकते हैं तो true वापस करें, अन्यथा false।

उदाहरण के लिए, यदि इनपुट nums = [9,5,3,4,7,10,20,8] k = 3 है, तो आउटपुट True होगा क्योंकि हम (9,3), (5,7), (4,20), (8,10) जैसे जोड़े बना सकते हैं, सभी जोड़ों का योग 3 से विभाज्य है।

हल करने के चरण

  • dp := एक नई सूची

  • count := 0

  • nums में प्रत्येक x के लिए, करें

    • t := k - (x mod k)

    • यदि t, k के समान है, तो

      • count := count + 1

    • अन्यथा,

      • t को dp के अंत में डालें

  • यदि count mod 2, 0 के समान नहीं है, तो

    • False वापस करें

  • सूची dp को सॉर्ट करें

  • low := 0

  • high := dp का आकार - 1

  • जब तक low < high, करें

    • यदि dp[low] + dp[high], k के समान नहीं है, तो

      • False वापस करें

    • low := low + 1

    • high := high - 1

  • True वापस करें

उदाहरण

def solve(nums, k):
    dp = []
    count = 0
    for x in nums:
        t = k - (x % k)
        if t == k:
            count += 1
        else:
            dp.append(t)
    if count % 2 != 0:
        return False
    dp.sort()
    low = 0
    high = len(dp) - 1
    while low < high:
        if dp[low] + dp[high] != k:
            return False
        low += 1
        high -= 1
    return True

nums = [9,5,3,4,7,10,20,8]
k = 3
print(solve(nums, k))

इनपुट

[9,5,3,4,7,10,20,8], 3

आउटपुट

True
  1. पायथन में प्रत्येक एलिमेंट को n बार दोहराकर रेप्लिकेटेड लिस्ट ढूंढने का प्रोग्राम पायथन में प्रत्येक एलिमेंट को n बार दोहराकर रेप्लिकेटेड लिस्ट ढूंढने का प्रोग्राम

    मान लीजिए हमारे पास n एलिमेंट्स की एक सूची है; हमें सूची में प्रत्येक एलिमेंट को n बार दोहराना है। तो, यदि इनपुट nums = [1,5,8,3] है, तो आउटपुट [1, 1, 1, 1, 5, 5, 5, 5, 8, 8, 8, 8, 3, 3, 3, 3] होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे: n := nums का आकार ret := एक नई सूची nums में प्रत्ये

  1. पायथन में दाएं k बार घुमाकर ith एलिमेंट ढूंढने का प्रोग्राम पायथन में दाएं k बार घुमाकर ith एलिमेंट ढूंढने का प्रोग्राम

    मान लीजिए हमारे पास nums नामक एक ऐरे है, और एक मान k और दूसरा मान i है। हमें nums के एलिमेंट्स को दाएं k बार घुमाने के बाद इंडेक्स i पर एलिमेंट ढूंढना है। तो, यदि इनपुट nums = [2,7,9,8,10] k = 3 i = 2 है, तो आउटपुट 10 होगा क्योंकि तीसरे रोटेशन के बाद ऐरे [9,8,10,2,7] होगा, इसलिए अब ith एलिमेंट nums[

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

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