আমাদের একটি সিকোয়েন্স জেনারেটর আছে যা 1-এ শুরু হয়। প্রতিটি ধাপে 0 হয়ে যায় 10 এবং 1 হয়ে যায় 01। ধাপগুলো:
Step 1: 01 Step 2: 1001 Step 3: 01101001 Step 4: 1001011001101001 Step 5: 01101001100101101001011001101001
লক্ষ্য হল দেওয়া ধাপ সংখ্যায়osomal consecutive 00 জোড়া সংখ্যা বের করা।
প্যাটার্ন পর্যবেক্ষণ
- Step 1: ০ জোড়া
- Step 2: ১ জোড়া
- Step 3: ১ জোড়া
- Step 4: ৩ জোড়া
- Step 5: ৫ জোড়া
সিকোয়েন্স ২-এর ঘাত অনুযায়ী বড় হয় এবং ১২ ক্যারেক্টারের পর পুনরাবৃত্তি হয়। প্রতিটি ১২-দৈর্ঘ্যের ব্লকে ২টি 00 জোড়া থাকে।
সূত্র: tmp = 2^steps / 12, জোড়া = 1 + 2*tmp (steps > 3 হলে)।
C++ বাস্তবায়ন
#include <bits/stdc++.h>
using namespace std;
int Zero_pairs(int decimal) {
int count = 0;
if (decimal <= 1) count = 0;
else if (decimal == 2 || decimal == 3) count = 1;
else {
int temp = (pow(2, decimal) / 12);
count = 2 * temp + 1;
}
return count;
}
int main() {
int decimal = 7;
cout << "Count of Pairs Of Consecutive Zeros are: " << Zero_pairs(decimal);
return 0;
}
আউটপুট
Count of Pairs Of Consecutive Zeros are: 21