ধরুন আমাদের তিনটি সংখ্যা y, b এবং r আছে। সাজসজ্জার জন্য y হলুদ অলঙ্কার, b নীল অলঙ্কার এবং r লাল অলঙ্কার রয়েছে। একটি অলঙ্করণ সুন্দর হবে, যদি ব্যবহৃত নীল অলঙ্কারের সংখ্যা হলুদ অলঙ্কারের সংখ্যার চেয়ে ঠিক 1 দ্বারা বেশি হয় এবং ব্যবহৃত লাল অলঙ্কারের সংখ্যা নীল অলঙ্কারের সংখ্যার চেয়ে ঠিক 1 দ্বারা বেশি হয়। আমরা যতটা সম্ভব অলঙ্কার বেছে নিতে চাই এবং আমাদের সাজসজ্জাও ভালো করতে চাই। একটি সুন্দর সাজসজ্জার জন্য আমাদের সর্বাধিক সংখ্যক অলঙ্কার ব্যবহার করতে হবে৷
সুতরাং, যদি ইনপুটটি y =8 এর মত হয়; b =13; r =9, তাহলে আউটপুট হবে 24, কারণ 7 + 8 + 9 =24।
পদক্ষেপ
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
return 3 * (minimum of y, (b - 1) and (r - 2))
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h> using namespace std; int solve(int y, int b, int r){ return 3 * min(y, min(b - 1, r - 2)) + 3; } int main(){ int y = 8; int b = 13; int r = 9; cout << solve(y, b, r) << endl; }
ইনপুট
8, 13, 9
আউটপুট
24