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

C++-এ ন্যূনতম ডিজিট ডিলিট করে সংখ্যা থেকে সর্বোচ্চ কিউব (Cube) বের করুন


কনসেপ্ট

দেওয়া সংখ্যা N থেকে ন্যূনতম ডিজিট ডিলিট করে (হয় ০) সর্বোচ্চ পারফেক্ট কিউব বের করুন। যেকোনো ডিজিট ডিলিট করা যাবে।

Aকে পারফেক্ট কিউব বলা হয় যদি A = B³ কিছু পূর্ণসংখ্যা B-এর জন্য।

যদি কোনো পারফেক্ট কিউব তৈরি করা না যায়, -1 প্রিন্ট করুন।

উদাহরণ

N = 1025 হলে, ০ ডিলিট করলে ১২৫ পাওয়া যায় যা ৫³ (৫×৫×৫=১২৫)।

N = 806 হলে, ০ এবং ৬ ডিলিট করলে ৮ পাওয়া যায় যা ২³ (২×২×২=৮)।

পদ্ধতি

সংখ্যার সব সাবসিকোয়েন্স চেক করুন কিউব কিনা এবং ম্যাক্সিমাম কিউব খুঁজুন। সাবস্ট্রিং তৈরি করতে লাস্ট ক্যারেক্টার ডিলিট করে রিকার্সন করুন।

যেমন num = "876" হলে সাবসিকোয়েন্সগুলো: 8, 87, 876, 86, 7, 76, 6।

উদাহরণ

#include <bits/stdc++.h> 
using namespace std; 
#define ll long long 
ll mx1 = INT_MIN; 

bool is_Cube(ll x1){ 
    int found = 0; 
    for (int i = 2; i <= (x1 / 2); i++){ 
        if (x1 % i == 0){ 
            if ((i * i * i) == x1) 
                found = 1; 
        } 
    } 
    if (found == 1) 
        return true; 
    else 
        return false; 
} 

void printSubSeqRec(string str, int n1, int index = -1, string curr1 = ""){ 
    if (index == n1) 
        return; 
    if (curr1 != ""){ 
        ll temp = stoi(curr1); 
        if (is_Cube(temp)) 
            mx1 = max(mx1, temp); 
    } 
    for (int i = index + 1; i < n1; i++){ 
        curr1 += str[i]; 
        printSubSeqRec(str, n1, i, curr1); 
        curr1 = curr1.erase(curr1.size() - 1); 
    } 
    return; 
} 

int main(){ 
    int nums1 = 1025; 
    string str1 = to_string(nums1); 
    printSubSeqRec(str1, str1.size()); 
    if (mx1 != INT_MIN) 
        cout << mx1; 
    else 
        cout << "NOT FOUND ANY CUBE"; 
    return 0; 
}

আউটপুট

125

  1. C++-এ দিয়ে गये পয়েন্ট থেকে সম্ভাব্য কোয়াড্রিল্যাটারেল সংখ্যা বের করুন

  2. দেওয়া অঙ্কগুলো দিয়ে গঠিত সর্বোচ্চ সংখ্যা খুঁজে বের করা C++-তে

  3. সি++ প্রোগ্রাম: সংখ্যা বিভাজ্য করে এমন অঙ্কগুলোর গণনা (Count of Digits Dividing the Number)

  4. পাইথনে ন্যূনতম অঙ্ক মুছে একটি সংখ্যা থেকে সবচেয়ে বড় পারফেক্ট কিউব বের করুন