কম্পিউটার

N দৈর্ঘ্যের বাইনারি স্ট্রিংগুলির সংখ্যা গণনা করুন যেখানে C++ এ শুধুমাত্র 0 এবং 1 রয়েছে


আমাদের একটি সংখ্যা দেওয়া হয়েছে ধরা যাক, সংখ্যা এবং কাজটি হল বাইনারি স্ট্রিংগুলির গণনা গণনা করা যা প্রদত্ত সংখ্যা সংখ্যার মাধ্যমে তৈরি করা যেতে পারে শুধুমাত্র o's এবং 1's।

বাইনারি নম্বর সিস্টেম হল সংখ্যা প্রতিনিধিত্ব কৌশলগুলির একটি প্রকার। এটি সবচেয়ে জনপ্রিয় এবং ডিজিটাল সিস্টেমে ব্যবহৃত হয়। বাইনারি সিস্টেম বাইনারি পরিমাণের প্রতিনিধিত্ব করার জন্য ব্যবহৃত হয় যা যে কোনো ডিভাইস দ্বারা প্রতিনিধিত্ব করা যেতে পারে যার শুধুমাত্র দুটি অপারেটিং অবস্থা বা সম্ভাব্য শর্ত রয়েছে। উদাহরণস্বরূপ, একটি সুইচের শুধুমাত্র দুটি অবস্থা আছে:খোলা বা বন্ধ।

বাইনারি সিস্টেমে, শুধুমাত্র দুটি চিহ্ন বা সম্ভাব্য ডিজিট মান রয়েছে, যেমন, 0 এবং 1। যেকোনো ডিভাইস দ্বারা প্রতিনিধিত্ব করা হয় যার শুধুমাত্র 2টি অপারেটিং অবস্থা বা সম্ভাব্য শর্ত রয়েছে। বাইনারি স্ট্রিং হল সেই স্ট্রিংগুলি যাতে বাইনারি মান থাকে যেমন হয় 0 বা 1

উদাহরণস্বরূপ

Input − num = 3
Output − count is 8

ব্যাখ্যা − বাইনারি সংমিশ্রণগুলি যা 3 দৈর্ঘ্যে গঠিত হতে পারে তা হল:000, 111, 001,101, 100, 110, 011, 010 যেহেতু তারা সংখ্যায় মোট 8 তাই গণনা হল 8৷

Input − num = 2
Output − count is 4

ব্যাখ্যা − বাইনারি সংমিশ্রণ যা দৈর্ঘ্য 2 দিয়ে গঠিত হতে পারে তা হল:00, 11, 01,10 যেহেতু তারা সংখ্যায় মোট 4 তাই গণনা হল 4৷

নিম্নলিখিত প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • লম্বা টাইপের একটি সংখ্যা ইনপুট করুন কারণ সংখ্যাটি যেকোনও সংখ্যা দীর্ঘ হতে পারে

  • (দীর্ঘ দীর্ঘ)(le9 + 7)

    হিসাবে মোড মান গণনা করুন
  • গণনা গণনা করার জন্য একটি ফাংশন তৈরি করুন

  • একটি অস্থায়ী পরিবর্তনশীল ঘোষণা করুন যা গণনা এবং অন্য একটি পরিবর্তনশীল টেম্প সংরক্ষণ করবে এবং এটি 2 দিয়ে শুরু করবে।

  • temp =temp % mod

    হিসাবে সংখ্যা সেট করুন
  • স্টার্ট লুপ যখন num> 0

  • IF num &1 চেক করুন তারপর গণনা (count * temp)% mod

    হিসাবে সেট করুন
  • num =num>> 1

    সেট করুন
  • temp =(temp * temp) % mod

    সেট করুন
  • রিটার্ন গণনা

  • ফলাফল প্রিন্ট করুন।

উদাহরণ

#include <iostream>
using namespace std;
#define ll long long
#define mod (ll)(1e9 + 7)
// An iterative function to find (x^y)%p in O(log y)
ll power(ll x, ll y, ll p){
   ll result = 1;
   x = x % p; // Update x if it is more than or
   // equal to p
   while (y > 0){
      // If y is odd, multiply x with result
      if (y & 1){
         result = (result * x) % p;
      }
      // y must be even now
      y = y >> 1; // y = y/2
      x = (x * x) % p;
   }
   return result;
}
// Function to count the number of binary strings
ll countbstring(ll num){
   int count = power(2, num, mod);
   return count;
}
int main(){
   ll num = 3;
   cout <<"count is: "<<countbstring(num);
   return 0;
}

আউটপুট

আমরা উপরের কোডটি চালালে আমরা নিম্নলিখিত আউটপুট পাব -

count is: 8

  1. C/C++ এ পরপর 1 ছাড়া বাইনারি স্ট্রিংয়ের সংখ্যা গণনা করার প্রোগ্রাম?

  2. পরপর 1 ছাড়া বাইনারি স্ট্রিং সংখ্যা গণনা করার জন্য C/C++ প্রোগ্রাম?

  3. প্রতিটি সিঁড়িতে সিঁড়ির সংখ্যা এবং ধাপের সংখ্যা গণনা করার জন্য C++ প্রোগ্রাম

  4. C++ পাথের দৈর্ঘ্য সর্বাধিক সংখ্যক বাঁক রয়েছে