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

पायथन में अधिकतम आइसक्रीम बार खोजने का कार्यक्रम

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

इसलिए, यदि इनपुट लागत की तरह है =[3,1,4,5,2], सी =10, तो आउटपुट 4 होगा क्योंकि हम कुल के लिए सूचकांक 0,1,2,4 पर आइसक्रीम बार खरीद सकते हैं 3 + 1 + 4 + 2 =10 की कीमत।

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

  • सूची लागतों को क्रमबद्ध करें

  • मैं:=0

  • जबकि मैं <लागत का आकार और c>=लागत[i], करता हूं

    • c :=c - लागत[i]

    • मैं :=मैं+1

  • वापसी मैं

उदाहरण

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

def solve(costs, c):
   costs.sort()
   i=0
   while(i<len(costs) and c >= costs[i]):
      c = c-costs[i]
      i=i+1
   return i

costs = [3,1,4,5,2]
c = 10
print(solve(costs, c))

इनपुट

[3,1,4,5,2], 10

आउटपुट

4

  1. पायथन में समान लंबाई के k रिबन की अधिकतम लंबाई खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास सकारात्मक संख्याओं की एक सूची है, जो रिबन की लंबाई का प्रतिनिधित्व करती है और एक मान k भी है। हम जितनी बार चाहें रिबन काट सकते हैं, हमें सबसे बड़ी लंबाई r ढूंढनी होगी जैसे कि हमारे पास लंबाई r के k रिबन हो सकें। अगर हमें ऐसा समाधान नहीं मिल रहा है, तो -1 पर लौटें। इसलिए, यदि

  1. पायथन में किसी भी स्थान पर 5 जोड़कर अधिकतम संख्या ज्ञात करने का कार्यक्रम

    मान लीजिए कि हमारे पास एक संख्या n है, हमें उस संख्या में कहीं भी 5 डालकर अधिकतम संख्या ज्ञात करनी है। इसलिए, यदि इनपुट n =834 जैसा है, तो आउटपुट 8534 होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - 0, तो s :=n स्ट्रिंग के रूप में k :=रिक्त स्ट्रिंग c :=असत्य प्रत्येक वर्ण के

  1. पायथन में अधिकतम भवन ऊंचाई खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक मान n है और जोड़े की एक और सूची है जिसे प्रतिबंध कहा जाता है। हम एक शहर में नई इमारतें बनाना चाहते हैं। लेकिन कुछ प्रतिबंध हैं। हम एक लाइन में बना सकते हैं और इमारतों को 1 से n तक लेबल किया जाता है। प्रतिबंधों के दो पैरामीटर हैं, इसलिए प्रतिबंध [i] =(id_i, max_height_i) इंग