ধরুন আমাদের কাছে একটি সংখ্যা N, এবং 1, 10 এবং 25 টাকার মুদ্রার সীমাহীন সংখ্যক কয়েন রয়েছে। ঠিক পরিমাণ N দিতে আমাদের সর্বনিম্ন সংখ্যক কয়েন ব্যবহার করতে হবে। ধরুন N হল 14, তাহলে কয়েনের সংখ্যা হবে 5, একটি 10 মানের কয়েন এবং চারটি 1 মানের কয়েন।
এটি সমাধান করতে, আমাদের এই পদক্ষেপগুলি ব্যবহার করতে হবে -
- যদি N <10 হয়, তাহলে 1টি মানের কয়েনের N নম্বর দিন
- যদি N> 9 এবং N <25 হয়, তাহলে মানটিকে 10 দিয়ে ভাগ করুন এবং ফলাফল পান, অবশিষ্টগুলি 1 মূল্যের মুদ্রা ব্যবহার করে কভার করা হবে, ফলাফল পেতে গণনা যোগ করুন
- যদি N> 25 হয়, তাহলে 25 দিয়ে ভাগ করুন, ফলাফল নিন, যখন ফলাফল <25 হয়, তারপর দ্বিতীয় বিন্দুর জন্য আবার একই কাজ করুন ইত্যাদি।
উদাহরণ
#include<iostream> using namespace std; int countMinCoins(int n) { if(n<10) return n; else if(n > 9 && n < 25){ int count = n/10; count += n%10; return count; } else { int count = n/25; return count + countMinCoins(n%25); } } int main() { int n = 88; cout << "Minimum number of coins required: " << countMinCoins(n); }
আউটপুট
Minimum number of coins required: 7