কম্পিউটার

C++-এ নিকটতম এবং ছোট পরিপাটি সংখ্যা খুঁজুন


ধরুন আমাদের একটি সংখ্যা n আছে, আমাদের n-এর নিকটতম এবং ছোট পরিপাটি সংখ্যাটি খুঁজে বের করতে হবে। সুতরাং একটি সংখ্যাকে পরিপাটি সংখ্যা বলা হয়, যদি এর সমস্ত সংখ্যা অ-হ্রাস না হওয়া ক্রমে সাজানো হয়। সুতরাং সংখ্যাটি যদি 45000 হয়, তাহলে নিকটতম এবং ছোট পরিপাটি সংখ্যাটি হবে 44999৷

এই সমস্যাটি সমাধান করার জন্য, আমরা শেষ থেকে সংখ্যাটি অতিক্রম করব, যখন পরিপাটি সম্পত্তি লঙ্ঘন করা হয়, তখন আমরা 1 দ্বারা সংখ্যা কমিয়ে ফেলি এবং পরবর্তী সমস্ত সংখ্যা 9 হিসাবে তৈরি করি।

উদাহরণ

#include<iostream>
using namespace std;
string tidyNum(string number) {
   for (int i = number.length()-2; i >= 0; i--) {
      if (number[i] > number[i+1]) {
         number[i]--;
         for (int j=i+1; j<number.length(); j++)
            number[j] = '9';
      }
   }
   return number;
}
int main() {
   string str = "45000";
   string num = tidyNum(str);
   cout << "The tidy number is: " << num;
}

আউটপুট

The tidy number is: 44999

  1. C++ ব্যবহার করে পঞ্চভুজ পিরামিডাল নম্বর খুঁজুন

  2. C++ ব্যবহার করে একটি স্ট্রিং এর সাবস্ট্রিং এর সংখ্যা খুঁজুন

  3. C++ ব্যবহার করে স্টপিং স্টেশনের সংখ্যা খুঁজুন

  4. C++ ব্যবহার করে ফুটবলে পেন্টাগন এবং হেক্সাগনের সংখ্যা খুঁজুন