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

दिए गए सरणी से लंबाई k की सरणी खोजने का कार्यक्रम जिसकी अनुचितता अजगर में न्यूनतम है

मान लीजिए कि हमारे पास एक सरणी A और दूसरा मान k है। हमें एक एरे एर बनाना है जिसका आकार k bu है जो A से तत्व ले रहा है और अनुचितता को कम करता है। यहाँ अनुचितता की गणना इस सूत्र द्वारा की जाती है -

(𝑚𝑎𝑥𝑖𝑚𝑢𝑚 ) - (𝑚𝑖𝑛𝑖𝑚𝑢𝑚 )

इसलिए, यदि इनपुट ए =[25, 120, 350, 150, 2500, 25, 35] और के =3 जैसा है, तो आउटपुट 10 होगा, क्योंकि हम तत्व [25, 25, 35] ले सकते हैं। (गिरफ्तारी) =35 और मिनट (गिरफ्तारी) =25। तो उनका अंतर 10 है।

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

  • i:=0
  • सूची A को क्रमित करें
  • n :=A का आकार
  • एम:=ए[एन-1]
  • x:=0, y:=0
  • जबकि मैं <एन-के, करते हैं
    • अगर A[i+k-1] - A[i]
    • m :=A[i+k-1] - A[i]
  • i :=i + 1
  • वापसी एम
  • उदाहरण

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

    def solve(A, k):
       i=0
       A.sort()
       n = len(A)
       m=A[n-1]
       x=0
       y=0
       while i<n-k:
          if(A[i+k-1]-A[i]<m):
             m=A[i+k-1]-A[i]
          i+=1
       return m
    
    A = [25, 120, 350, 150, 2500, 25, 35]
    k = 3
    print(solve(A, k))

    इनपुट

    [25, 120, 350, 150, 2500, 25, 35]

    आउटपुट

    10

    1. कुछ संख्याओं का गुणनफल खोजने का कार्यक्रम जिसका योग पायथन में दिया गया है

      मान लीजिए कि हमारे पास एक संख्या n है, हमें दो या दो से अधिक संख्याएँ इस प्रकार ज्ञात करनी हैं कि उनका योग n के बराबर हो, और इन संख्याओं का गुणनफल अधिकतम हो, तो हमें गुणनफल ज्ञात करना होगा। इसलिए, यदि इनपुट n =12 जैसा है, तो आउटपुट 81 होगा, जैसे 3 + 3 + 3 + 3 =12 और 3 * 3 * 3 * 3 =81। इसे हल करने

    1. पायथन में हानिपूर्ण रन-लेंथ एन्कोडिंग की न्यूनतम लंबाई खोजने का कार्यक्रम

      मान लीजिए कि हमारे पास एक लोअरकेस स्ट्रिंग s और दूसरा मान k है। अब एक ऑपरेशन पर विचार करें जहां हम एक स्ट्रिंग पर एक रन-लेंथ एन्कोडिंग करते हैं, जिसमें बार-बार आने वाले वर्णों को एकाउंट और कैरेक्टर के रूप में रखा जाता है। तो यदि स्ट्रिंग aaabbc की तरह है तो उसे 3a2bc के रूप में एन्कोड किया जाएगा। यह

    1. पायथन में दी गई शर्त के साथ सबसे लंबे समय तक सबलिस्ट की लंबाई खोजने का कार्यक्रम

      अधिकतम उपसूची। 6 के रूप में। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे- रिट:=0 दो डबल एंडेड कतारों को परिभाषित करें minq और maxq एल:=0, आर:=0 जबकि r <अंकों का आकार, करें एन:=अंक [आर] जबकि minq और n