কম্পিউটার টিউটোরিয়াল

C++-এ তিনটি সংখ্যা শূন্য করার সর্বনিম্ন ধাপ গণনা


তিনটি সংখ্যা a, b, c দেওয়া আছে। প্রতিটি ধাপে किन्हু দুটি সংখ্যা থেকে ১ বিয়োগ করতে হবে। সবগুলো শূন্য করার জন্য সর্বনিম্ন ধাপ বের করুন।

অ্যালগরিদম

  • সবচো বড় দুটি সংখ্যা থেকে ১ বিয়োগ করলে ধাপ কম লাগে।
  • সার্ট করে সবচো বড় দুটি বের করুন বা লজিক: যদি a+b > c হয়, তবে a,b থেকে বিয়োগ করুন।
  • যখন a+b ≤ c হয়, তখন বাকি ধাপ = min(c, a+b)।

উদাহরণ

a=4, b=4, c=6 → ৭ ধাপ

(4,4,6)→(3,3,6)→(2,3,5)→(1,3,4)→(0,3,3)→(0,2,2)→(0,1,1)→(0,0,0)

উদাহরণ কোড

#include <bits/stdc++.h>
using namespace std;

int maxSteps(int a, int b, int c) {
    int steps = 0;
    while (a + b > c && a > 0 && b > 0) {
        a--; b--; steps++;
    }
    steps += min(c, a + b);
    return steps;
}

int main() {
    cout << maxSteps(4, 4, 6) << endl;  // 7
    return 0;
}

আউটপুট

7

  1. সি++-এ ডাডেনি নম্বর

  2. C++ প্রোগ্রাম: মিস্টেরি নাম্বার (Mystery Number) চেক করা

  3. C++ প্রোগ্রাম: তিনটি সংখ্যার মধ্যে বড়টি খুঁজে বের করা

  4. পাইথনে তিনটি সংখ্যা শূন্য (Zero) করার অপ্টিমাল স্টেপ গণনা