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

कार्यों की संख्या खोजने का कार्यक्रम पायथन में दी गई शर्तों के साथ समाप्त किया जा सकता है

मान लीजिए हमारे पास कार्यों की एक सूची है और लोगों की एक और सूची है। कार्य [i] ith कार्य को करने के लिए आवश्यक शक्ति की मात्रा निर्धारित करता है। और लोग [i] यह निर्धारित करते हैं कि ith व्यक्ति के पास कितनी ताकत है। अंत में, हमें उन कार्यों की संख्या का पता लगाना होगा जिन्हें पूरा किया जा सकता है यदि एक व्यक्ति अधिक से अधिक एक कार्य कर सकता है।

इसलिए, यदि इनपुट कार्यों की तरह है =[4, 3, 9, 15], लोग =[10, 5, 3, 2], तो आउटपुट 3 होगा, क्योंकि पहला व्यक्ति कार्य 9 कर सकता है, दूसरा व्यक्ति कर सकता है कार्य 4 निष्पादित करें, तीसरा व्यक्ति कार्य 3 कर सकता है, और चौथा व्यक्ति कोई कार्य नहीं कर सकता।

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

  • सूची कार्यों को क्रमबद्ध करें, सूची लोगों को क्रमबद्ध करें
  • सीटी:=0, इंडस्ट्रीज़:=0
  • मेरे लिए 0 से लेकर लोगों के आकार तक, करें
    • जे के लिए श्रेणी और कार्यों के आकार के लिए, करें
      • यदि लोग[i]>=कार्य[j], तो
        • सीटी:=सीटी + 1
        • इंड:=इंड + 1
        • लूप से बाहर आएं
      • अन्यथा,
        • लूप से बाहर आएं
  • वापसी सीटी

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

उदाहरण

class Solution:
   def solve(self, tasks, people): tasks.sort()
      people.sort()
      ct=0
      ind=0
      for i in range(len(people)):
         for j in range(ind,len(tasks)):
            if people[i]>=tasks[j]:
               ct+=1
               ind+=1
               break
            else:
               break
         return ct
ob = Solution()
tasks = [4, 3, 9, 15]
people = [10, 5, 3, 2] print(ob.solve(tasks, people))

इनपुट

[4, 3, 9, 15], [10, 5, 3, 2]

आउटपुट

3

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

    मान लीजिए कि हमारे पास ए =1, बी =2, ... जेड =26 जैसी मैपिंग है, और हमारे पास एक एन्कोडेड संदेश संदेश स्ट्रिंग है, हमें इसे डिकोड करने के तरीकों की संख्या गिननी होगी। इसलिए, यदि इनपुट संदेश =222 जैसा है, तो आउटपुट 3 होगा, क्योंकि इसे 3 तरीकों से डिकोड किया जा सकता है:बीबीबी, बीवी, और वीबी। इसे हल क

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

    मान लीजिए कि हमारे पास एक संख्या n है, हमें उस संख्या के द्विआधारी प्रतिनिधित्व में मौजूद बिट 1 की संख्या ज्ञात करनी है। तो, अगर इनपुट 12 जैसा है, तो आउटपुट 2 होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - गिनती :=0 जबकि n गैर-शून्य है, करें गिनती :=गिनती + (n और 1) n :=(n / 2) की मंजिल

  1. पायथन में हम जितने सिक्के एकत्र कर सकते हैं, उन्हें खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक 2D मैट्रिक्स है जहां प्रत्येक सेल कुछ सिक्के संग्रहीत करता है। अगर हम [0,0] से शुरू करते हैं, और केवल दाएं या नीचे जा सकते हैं, तो हमें नीचे दाएं कोने से अधिकतम सिक्कों की संख्या का पता लगाना होगा। तो, अगर इनपुट पसंद है 1 4 2 2 0 0 0 5 तब आउटपुट 14 होग