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

पायथन में सिक्कों और मात्राओं के साथ हम कितने अलग-अलग सिक्के बना सकते हैं?

मान लीजिए कि हमारे पास सिक्कों नामक मूल्यों की एक सूची है और एक अन्य सूची है जिसे समान लंबाई की मात्रा कहा जाता है। ith सिक्के का मूल्य सिक्के [i] है और वर्तमान में हमारे पास ith सिक्के की मात्रा [i] संख्या है। हमें इन सिक्कों के गैर-खाली समूह का उपयोग करके प्राप्त किए जा सकने वाले विशिष्ट सिक्का योग मूल्यों की संख्या ज्ञात करनी होगी।

इसलिए, यदि इनपुट सिक्कों की तरह है =[1, 2, 5] मात्रा =[1, 2, 1], तो आउटपुट 10 होगा, क्योंकि हमारे पास निम्नलिखित अलग-अलग सिक्के हो सकते हैं [1] =1, [2] =2, [1,2] =3, [2,2] =4, [5] =5, [1,5] =6, [2,5] =7, [1,2,5] =8 , [2,2,5] =9, [1,2,2,5] =10.

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

फ़ंक्शन rec() को परिभाषित करें। यह मैं, रेस

. ले जाएगा
if i is same as size of coins , then
   return
for k in range 0 to quantities[i] + 1, do
   cur := res + k * coins[i]
   insert cur into fres
   rec(i + 1, cur)
From the main method, do the following:
fres := a new set
rec(0, 0)
return size of fres - 1

उदाहरण

class Solution:
   def solve(self, coins, quantities):
      def rec(i, res):
         if i == len(coins):
            return
         for k in range(0, quantities[i] + 1):
            cur = res + k * coins[i]
            fres.add(cur)
            rec(i + 1, cur)

      fres = set()
      rec(0, 0)
      return len(fres) - 1

ob = Solution()
coins = [1, 2, 5]
quantities = [1, 2, 1]
print(ob.solve(coins, quantities))

इनपुट

[1, 2, 5], [1, 2, 1]

आउटपुट

10

  1. पायथन में अलग-अलग नोड्स का उपयोग करके संभावित बीएसटी की संख्या का पता लगाने के लिए कार्यक्रम तैयार किया जा सकता है

    मान लीजिए कि हमारे पास एक संख्या n है। यदि हमारे पास [1,2,...,n] जैसी संख्याएँ हैं, तो हमें इन n मानों का उपयोग करके संभावित BST की संख्या को गिनना होगा। अगर उत्तर बहुत बड़ा है, तो परिणाम को 10^9+7 से संशोधित करें। इसलिए, यदि इनपुट n =3 जैसा है, तो आउटपुट 14 होगा, इसे हल करने के लिए, हम इन चरणों

  1. स्ट्रिंग की संख्या खोजने के लिए प्रोग्राम जहां हम 'ए' 'ए' या 'बी' हो सकते हैं, और 'बी' पाइथन में 'बी' रहता है

    मान लीजिए कि हमारे पास केवल ए और बी के साथ एक स्ट्रिंग है। ए एस ए रह सकता है या बी में बदल सकता है, लेकिन बी को बदला नहीं जा सकता है। हमें अद्वितीय स्ट्रिंग्स की संख्या ज्ञात करनी होगी जो हम बना सकते हैं। इसलिए, यदि इनपुट s =baab जैसा है, तो आउटपुट 4 होगा, क्योंकि हम इन स्ट्रिंग्स को बना सकते हैं -

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

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