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

सूची से तीन अद्वितीय तत्वों को खोजने का कार्यक्रम जिनका योग k पायथन के सबसे करीब है

मान लीजिए कि हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है और दूसरा मान k है, तो हमें अंकों (a, b, c) में तीन अद्वितीय प्रविष्टियां ढूंढनी होंगी जैसे कि |a + b + c - k| कम से कम किया जाता है और पूर्ण अंतर लौटाता है।

इसलिए, यदि इनपुट संख्या =[2, 5, 25, 6] k =14 की तरह है, तो आउटपुट 1 होगा जैसे कि हम [2, 5, 6] लेते हैं, हमें 14 के सबसे करीब मिलेगा और पूर्ण अंतर है |13 - 14| =1.

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

  • सूची संख्या क्रमित करें

  • उत्तर :=1^9

  • मैं के लिए 0 से लेकर अंकों के आकार तक, करें

    • जे:=मैं + 1

    • k :=अंकों का आकार - 1

    • जबकि जे <के, करो

      • एस:=अंक [i] + अंक [जे] + अंक [के]

      • अगर s <=लक्ष्य, तो

        • उत्तर :=न्यूनतम उत्तर और लक्ष्य - s

        • जे:=जे + 1

      • अन्यथा,

        • उत्तर :=न्यूनतम उत्तर और s - लक्ष्य

        • के :=के - 1

  • वापसी उत्तर

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

उदाहरण

class Solution:
   def solve(self, nums, target):
      nums.sort()
      ans = 1e9
      for i in range(len(nums)):
         j = i + 1
         k = len(nums) − 1
         while j < k:
            s = nums[i] + nums[j] + nums[k]
            if s <= target:
               ans = min(ans, target - s)
               j += 1
            else:
               ans = min(ans, s - target)
               k −= 1
      return ans
ob1 = Solution()
nums = [2, 5, 25, 6]
k = 14
print(ob1.solve(nums, k))
लौटाएं

इनपुट

[2, 5, 25, 6], 14

आउटपुट

1

  1. एक सूची का संचयी योग खोजने के लिए पायथन कार्यक्रम

    इस लेख में, हम नीचे दिए गए समस्या कथन के समाधान के बारे में जानेंगे। समस्या कथन - हमें एक सूची दी गई है, हमें संचयी राशि के साथ एक सूची बनानी होगी। आइए अब नीचे दिए गए कार्यान्वयन में समाधान देखें - उदाहरण # cumulative sum def Cumulative(l):    new = []    cumsum = 0   &nb

  1. सूची में तत्वों का योग खोजने के लिए पायथन कार्यक्रम

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

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

    एक पूर्णांक सूची को देखते हुए, हमारा कार्य सूची में N सबसे बड़े तत्वों को खोजना है। उदाहरण Input : [40, 5, 10, 20, 9] N = 2 Output: [40, 20] एल्गोरिदम Step1: Input an integer list and the number of largest number. Step2: First traverse the list up to N times. Step3: Each traverse find the largest va