এখানে আমরা দেখব, একটি সংখ্যার বাইনারি উপস্থাপনায় সংলগ্ন সেট বিট আছে কিনা। ধরুন 12 নম্বরটিতে পরপর দুটি 1s (12 =1100) আছে।
এই ধরনের সংখ্যা পরীক্ষা করার জন্য, ধারণাটি খুব সহজ। আমরা 1 বিট নম্বরটি শিফট করব, তারপর বিটওয়াইজ করব। যদি বিটওয়াইজ এবং ফলাফল অ-শূন্য হয়, তাহলে অবশ্যই কিছু পরপর 1s হতে হবে।
উদাহরণ
#include <iostream> using namespace std; bool hasConsecutiveOnes(int n) { if((n & (n >> 1)) == 1){ return true; }else{ return false; } } int main() { int num = 67; //1000011 if(hasConsecutiveOnes(num)){ cout << "Has Consecutive 1s"; }else{ cout << "Has No Consecutive 1s"; } }
আউটপুট
Has Consecutive 1s