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

C++ প্রোগ্রাম: n কে ১ করার ন্যূনতম অপারেশন (২,৩,৫ দিয়ে ভাগ)

n দেওয়া আছে। অপারেশন: ২ দিয়ে ভাগ (যদি বিভাজ্য), ২n/৩ (৩ দিয়ে বিভাজ্য), ৪n/৫ (৫ দিয়ে বিভাজ্য)। n কে ১ করার ন্যূনতম মuvian সংখ্যা বের করুন। অসম্ভব হলে -1।

উদাহরণ

n = 10 → আউটপুট: ৪ (১০→৫→৪→২→১)

সমাধানের ধাপসমূহ

লুপে: ২ দিয়ে বিভাজ্য হলে n/=2, count++। ৩ দিয়ে বিভাজ্য হলে n/=3, count+=2। ৫ দিয়ে বিভাজ্য হলে n/=5, count+=3। অন্যথায় -1 রিটার্ন।

উদাহরণ

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

int solve(int n) { 
    int m = 0; 
    while (n != 1) { 
        if (n % 2 == 0) { n = n / 2; m++; } 
        else if (n % 3 == 0) { n = n / 3; m += 2; } 
        else if (n % 5 == 0) { n = n / 5; m += 3; } 
        else { m = -1; break; } 
    } 
    return m; 
} 

int main() { 
    int n = 10; 
    cout << solve(n) << endl; 
    return 0; 
}

ইনপুট

10

আউটপুট

4
  1. C++ প্রোগ্রাম: দিয়ে দেয়া আকারের ডোডেকাগন बनाने के तरीক সংখ্যা গণনা

  2. বাইনারি ম্যাট্রিক্স কে শূন্য ম্যাট্রিক্সে রূপান্তরের অপারেশন গণনা (C++ প্রোগ্রাম)

  3. পাইথনে দুটি সংখ্যা নন-কোপরাইম (Non-Coprime) করার ন্যূনতম অপারেশন

  4. পাইথনে ম্যাট্রিক্স কলাম ফ্লিপ করে টার্গেট ম্যাট্রিক্সে রূপান্তরের ন্যূনতম অপারেশন খুঁজে বের করার প্রোগ্রাম