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

সি++-এ K-তম বুম সংখ্যা (Boom Number) বের করা

এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখব যা K-তম বুম সংখ্যা (Boom Number) বের করবে।

যে সংখ্যাগুলো শুধু ২ এবং ৩ দিয়ে গঠিত, সেগুলোকে বুম সংখ্যা বলা হয়।

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

  • k-এর মান ইনিশিয়ালাইজ করুন।
  • স্ট্রিং টাইপের একটি কিউ (queue) ইনিশিয়ালাইজ করুন।
  • কিউতে খালি স্ট্রিং পুশ করুন।
  • একটি কাউন্টার ভেরিয়েবল ০ দিয়ে ইনিশিয়ালাইজ করুন।
  • কাউন্টার k-এর চেয়ে ছোট বা সমান থাকা পর্যন্ত একটি লুপ চালান।
    • কিউর ফ্রন্ট (front) বের করুন।
    • কিউ থেকে এলিমেন্টটি পপ করুন।
    • ফ্রন্টটি একটি ভেরিয়েবলে সংরক্ষণ করুন।
    • ফ্রন্টের সাথে ২ যুক্ত করে কিউতে পুশ করুন।
    • কাউন্টার ইনক্রিমেন্ট করুন এবং k-এর সাথে সমান কিনা যাচাই করুন।
    • যদি সমান হয়, তবে মান প্রিন্ট করে ব্রেক করুন।
    • ফ্রন্টের সাথে ৩ যুক্ত করে কিউতে পুশ করুন।
    • কাউন্টার ইনক্রিমেন্ট করুন এবং k-এর সাথে সমান কিনা যাচাই করুন।
    • কাউন্টার ইনক্রিমেন্ট করুন এবং k-এর সাথে সমান কিনা যাচাই করুন।

উদাহরণ কোড

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

void findKthBoomNumber(long long k) {
    queue<string> queue;
    queue.push("");
    long long count = 0;
    while (count <= k) {
        string numberOne = queue.front();
        queue.pop();
        string numberTwo = numberOne;
        queue.push(numberOne.append("2"));
        count++;
        if (count == k) {
            cout << numberOne << endl;
            break;
        }
        queue.push(numberTwo.append("3"));
        count++;
        if (count == k) {
            cout << numberTwo << endl;
            break;
        }
    }
}

int main() {
    long long k = 45;
    findKthBoomNumber(k);
    return 0;
}

আউটপুট

উপরের কোডটি রান করলে নিচের ফলাফল পাওয়া যাবে:

23332

নিষ্কর্ষ

এই টিউটোরিয়াল সম্পর্কে আপনার যেকোনো প্রশ্ন থাকলে কমেন্ট সেকশনে জানাতে পারেন।

  1. Frugal সংখ্যা চেক করা (C++)

  2. C++ দিয়ে পেন্টাটপ (Pentatope) সংখ্যা বের করা

  3. সি++-এ নাম্বার অফ এনক্লেভস (Number of Enclaves)

  4. C++-এ অ্যাডাম সংখ্যা (Adam Number) চেক করার পদ্ধতি