بکندباز

تابعی بنویسید که مقدار پول و لیستی از مقادیر سکه‌ها را دریافت کند و تعداد روش‌های مختلف ساخت مقدار پول با استفاده از سکه‌های داده شده را بشمارد.

مثال

coins_combinations(4, [1, 2]) ➞ 3
# ترکیبات ممکن:
# 1+1+1+1 = 4
# 1+1+2 = 4
# 2+2 = 4

نکات

  1. ترتیب سکه‌ها اهمیت ندارد. یعنی ترکیبات مثل 1+1+2 و 2+1+1 برابر هستند.
  2. تعداد سکه‌ها نامحدود است.
self.assertEqual(coins_combinations(4, [1, 2]), 3)
self.assertEqual(coins_combinations(10, [5, 2, 3]), 4)
self.assertEqual(coins_combinations(11, [5, 7]), 0)
self.assertEqual(coins_combinations(300, [5,10,20,50,100,200,500]), 1022)
self.assertEqual(coins_combinations(301, [5,10,20,50,100,200,500]), 0)
self.assertEqual(coins_combinations(199, [3,5,9,15]), 760)
self.assertEqual(coins_combinations(419, [2,5,10,20,50]), 18515)

پاسخ های کاربران به این تمرین

user-ixnb
امتیاز:‌ 1499
تصحیح اتوماتیک 0 0
‎پایتون‎
28 دي 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

MarsBoy
امتیاز:‌ 1499
تصحیح اتوماتیک 0 0
‎پایتون‎
28 دي 1403

برای مشاهده پاسخ باید ابتدا وارد شده و قفل پاسخ را باز کنید

نظرات

*
*

تمرینات مرتبط