কম্পিউটার

C++ এ অনন্য সংখ্যার সাথে সংখ্যা গণনা করুন


ধরুন আমাদের একটি অ ঋণাত্মক পূর্ণসংখ্যা n আছে। আমাদেরকে অনন্য সংখ্যা x সহ সমস্ত সংখ্যা গণনা করতে হবে, যেখানে x 0 থেকে 10^n এর মধ্যে রয়েছে। তাই যদি n সংখ্যা 2 হয়, তাহলে ফলাফল হবে 91, কারণ আমরা 11, 22, 33, 44, 55, 66, 77, 88, 99 ছাড়া 0 থেকে 100 পর্যন্ত সংখ্যা খুঁজে পেতে চাই।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • যদি n 0 হয়, তাহলে 1 ফেরত দিন

  • n :=10 এর মিনিট এবং n

  • যদি n 1 হয়, তাহলে 10 ফেরত দিন

  • উত্তর :=9 এবং ret :=10

  • আমি 2 থেকে n

    পরিসরে
    • ans :=ans * (9 – i + 2)

    • ret :=ret + ans

  • রিটার্ন রিটার্ন

উদাহরণ(C++)

আরো ভালোভাবে বোঝার জন্য নিচের বাস্তবায়নটি দেখি -

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   int countNumbersWithUniqueDigits(int n) {
      if(n == 0)return 1;
      n = min(10, n);
      if(n == 1)return 10;
      int ans = 9;
      int ret = 10;
      for(int i = 2; i<= n; i++){
         ans *= (9 - i + 2);
         ret += ans;
      }
      return ret;
   }
};
main(){
   Solution ob;
   cout << (ob.countNumbersWithUniqueDigits(3));
}

ইনপুট

3

আউটপুট

739

  1. C++ এ বারবার সংখ্যা সহ সংখ্যা

  2. C++ এ ফ্যাক্টরিয়ালের সংখ্যা গণনা করুন

  3. C++-এ সর্বাধিক 2টি অনন্য সংখ্যা সহ N-এর চেয়ে কম সমস্ত সংখ্যা প্রিন্ট করুন

  4. পাইথনে সংখ্যার জোড় সংখ্যা সহ সংখ্যা খুঁজুন