ধরুন আমাদের কাছে বিক্রয়ের জন্য গাড়ির দামের একটি তালিকা আছে, এবং আমাদের একটি বাজেটও আছে, আমাদের সর্বাধিক সংখ্যক গাড়ি কিনতে হবে।
সুতরাং, যদি ইনপুটটি [80, 20, 10, 30, 80], k =85 এর মত হয়, তাহলে আউটপুট 3 হবে কারণ আমরা 20, 10, 40 মূল্যের তিনটি গাড়ি কিনতে পারি
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
-
গণনা :=0
-
তালিকার দাম বাছাই করুন
-
আমি 0 থেকে দামের আকারের মধ্যে, কর
-
যদি দাম[i] <=k, তাহলে
-
k :=k-দাম[i]
-
গণনা :=গণনা + 1
-
-
অন্যথায়,
-
লুপ থেকে বেরিয়ে আসুন
-
-
-
ফেরত গণনা
আসুন আরও ভালোভাবে বোঝার জন্য নিচের বাস্তবায়ন দেখি −
উদাহরণ
class Solution: def solve(self, prices, k): count =0 prices.sort() for i in range(len(prices)): if(prices[i]<=k): k = k-prices[i] count += 1 else: break return count ob = Solution() p = [80, 20, 10, 30, 80] print(ob.solve(p, 85))
ইনপুট
[80, 20, 10, 30, 80], 85
আউটপুট
3