এই সমস্যায় দুটি সংখ্যা n এবং k দেওয়া আছে। n-এর k-তম লিস্ট সিগনিফিক্যান্ট বিট (least significant bit) প্রিন্ট করতে হবে।
উদাহরণ:
ইনপুট: n = 12, k = 3 আউটপুট: 1 ব্যাখ্যা: 12-এর বাইনারি = 1100, ৩য় LSB = 1
সমাধান: বাইনারি শিফ্টিং ব্যবহার করব। (k-1) বার লেফট শিফ্ট করে বিটওয়াইজ AND অপারেশন করলে k-তম বিটের ভ্যালু পাওয়া যাবে।
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
int main() {
int N = 12, K = 3;
cout << K << "th significant bit of " << N << " is : ";
bool kthLSB = (N & (1 << (K-1)));
cout << kthLSB;
return 0;
}
আউটপুট
3th significant bit of 12 is : 1