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

C++-এ ৯ অপসারণ

মান लीজिए একটি পূর্ণসংখ্যা n দেওয়া আছে, আমাদের nতম পূর্ণসংখ্যা খুঁজে বের করতে হবে নিম্নলিখিত অপারেশন অনুসরণ করে: ১ থেকে শুরু করে যেকোনো এমন পূর্ণসংখ্যা অপসারণ করতে হবে যাতে ৯ অঙ্ক থাকে (যেমন ৯, ১৯, ২৯...।) ফলে একটি নতুন পূর্ণসংখ্যা সিকোয়েন্স তৈরি হবে: ১, ২, ৩, ৪, ৫, ৬, ৭, ৮, ১০, ১১, ... মনে রাখবেন ১ হবে প্রথম পূর্ণসংখ্যা।

যেমন, ইনপুট ৯ হলে আউটপুট হবে ১০।

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

  • ret := 0
  • s := 1
  • যখন n শূন্য নয়, তখন লুপ চালাতে হবে:
    • ret := ret + (n mod 9) * s
    • n := n / 9
    • s := s * 10
  • s := s * 10

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
typedef long long int lli;
class Solution {
public:
    int newInteger(int n) {
        int ret = 0;
        lli s = 1;
        while (n) {
            ret += (n % 9) * s;
            n /= 9;
            s *= 10;
        }
        return ret;
    }
};
int main() {
    Solution ob;
    cout << (ob.newInteger(120));
}

ইনপুট

120

আউটপুট

143
  1. C++-এ সর্টেড অ্যারে থেকে ডুপ্লিকেট রিমুভ II (প্রতিটি এলিমেন্ট সর্বোচ্চ দুবার থাকবে)

  2. স্ট্রিং থেকে ভোয়েল (Vowel) রিমুভ করা (C++)

  3. C++ প্রোগ্রাম: স্ট্রিং থেকে স্পেস রিমুভ করা

  4. C++-এ isnormal() ফাংশন