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

पायथन में लक्ष्य से कम दो संख्याओं का योग खोजने का प्रोग्राम

मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है और एक लक्ष्य मान भी है, हमें nums में संख्याओं के सबसे बड़े जोड़े का योग ढूंढना है जिसका योग अधिकतम (target - 1) है।

इसलिए, यदि इनपुट है nums = [8, 3, 4, 9, 2], target = 8, तो आउटपुट होगा 7, क्योंकि 8 से कम सबसे बड़े जोड़े का योग 4 + 3 = 7 है।

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

  • nums सूची को सॉर्ट करें
  • p1 := 0
  • p2 := nums का आकार - 1
  • m := -inf
  • जब p1 < p2, करें:
    • यदि nums[p1] + nums[p2] < target, तो:
      • m := max(m, nums[p1] + nums[p2])
      • p1 := p1 + 1
    • अन्यथा:
      • p2 := p2 - 1
  • m लौटाएं

उदाहरण

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

import math
def solve(nums, target):
    nums.sort()
    p1 = 0
    p2 = len(nums) - 1
    m = -math.inf
    while p1 < p2:
        if nums[p1] + nums[p2] < target:
            m = max(m, nums[p1] + nums[p2])
            p1 += 1
        else:
            p2 -= 1
    return m
nums = [8, 3, 4, 9, 2]
target = 8
print(solve(nums, target))

इनपुट

[8, 3, 4, 9, 2], 8

आउटपुट

7
  1. - Python में K से कम दो योग

    मान लीजिए हमारे पास पूर्णांकों की एक सरणी A है और दूसरा पूर्णांक K दिया गया है। हमें अधिकतम S ढूंढना है जैसे कि i < j के साथ A[i] + A[j] = S और S < K मौजूद हो। यदि ऐसा कोई i, j मौजूद नहीं है जो इस समीकरण को संतुष्ट करता हो, तो -1 लौटाएं। इसलिए उदाहरण के लिए यदि A = [34,23,1,24,75,33,54,8] और K = 60,

  1. Python प्रोग्राम में ऐरे का योग खोजना Python प्रोग्राम में ऐरे का योग खोजना

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

  1. पायथन प्रोग्राम: ऐरे का योग ढूंढें पायथन प्रोग्राम: ऐरे का योग ढूंढें

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