ধরুন আমাদের তিনটি সংখ্যা 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