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

पायथन में गुणा की गई संख्याओं का अधिकतम योग ढूंढने का प्रोग्राम

मान लीजिए हमारे पास nums और multipliers नामक दो सूचियां हैं। अब एक ऑपरेशन पर विचार करें जहां हम nums से कोई भी संख्या हटा सकते हैं और multipliers से कोई भी संख्या हटा सकते हैं फिर उन्हें एक साथ गुणा कर सकते हैं। हमें इस ऑपरेशन को तब तक दोहराना है जब तक सूचियों में से एक खाली न हो जाए, हमें गुणा की गई संख्याओं का अधिकतम योग ढूंढना है।

तो, यदि इनपुट nums = [-4, 4, 3] multipliers = [-2, 2] है, तो आउटपुट 16 होगा, क्योंकि हम -4 को -2 से और 4 को 2 से मिला सकते हैं जिससे -4 * -2 + 4 * 2 मिलेगा।

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

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

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

  • res := 0

  • यदि nums का आकार < multipliers का आकार, तो

    • nums और multipliers को स्वैप करें := multipliers, nums

  • n := nums का आकार

  • m := multipliers का आकार

  • i के लिए 0 से m - 1 तक की रेंज में, करें

    • यदि multipliers[i] <= 0, तो

      • res := res + nums[i] * multipliers[i]

    • अन्यथा,

      • res := res + multipliers[i] * nums[n - (m - i)]

  • res लौटाएं

उदाहरण

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

def solve(nums, multipliers):
    nums.sort()
    multipliers.sort()
    res = 0
    if len(nums) < len(multipliers):
        nums, multipliers = multipliers, nums
    n, m = len(nums), len(multipliers)
    for i in range(m):
        if multipliers[i] <= 0:
            res += nums[i] * multipliers[i]
        else:
            res += multipliers[i] * nums[n - (m - i)]
    return res

nums = [-4, 4, 3]
multipliers = [-2, 2]
print(solve(nums, multipliers))

इनपुट

[-4, 4, 3], [-2, 2]

आउटपुट

16
  1. Python प्रोग्राम से ऐरे में सबसे बड़ा तत्व खोजना Python प्रोग्राम से ऐरे में सबसे बड़ा तत्व खोजना

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक ऐरे दिया गया है, हमें ऐरे के सबसे बड़े तत्व की गणना करने की आवश्यकता है। यहां हम ब्रूट-फोर्स दृष्टिकोण का उपयोग करते हैं जिसमें हम पूरे लूप को पार करके और तत्व प्राप्त करके सबसे बड़ा तत्व निकालते हैं। हम नीच

  1. पायथन प्रोग्राम: ऐरे में सबसे बड़ा एलिमेंट ढूंढें पायथन प्रोग्राम: ऐरे में सबसे बड़ा एलिमेंट ढूंढें

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

  1. पायथन प्रोग्राम: संख्या के यूनिक प्राइम फैक्टर्स का गुणनफल पायथन प्रोग्राम: संख्या के यूनिक प्राइम फैक्टर्स का गुणनफल

    इस लेख में, हम नीचे दिए गए प्रॉब्लम स्टेटमेंट के समाधान के बारे में सीखेंगे: प्रॉब्लम स्टेटमेंट एक संख्या n दिए जाने पर, हमें इसके सभी यूनिक प्राइम फैक्टर्स का गुणनफल ढूंढना है और इसे वापस करना है। उदाहरण के लिए Input: num = 11 Output: Product is 11 व्याख्या यहां, इनपुट संख्या 11 है जिसमें केवल