একটি সংখ্যা X দেওয়া থাকলে, X-এর সাথে XOR করলে সর্বোচ্চ মান দিবে এমন সংখ্যা বের করতে হবে। ৮ বিট ধরে নেওয়া হয়েছে।
XOR-এ ভিন্ন বিট দিয়ে ১ এবং একই বিট দিয়ে ০ হয়। তাই X-এর ১'র কমপ্লিমেন্ট (বিট ফ্লিপ) হইতেই সর্বোচ্চ XOR ফলাফল আসবে।
সূত্র
ফলাফল = ((1 << 8) - 1) ^ X = 255 ^ X
উদাহরণ
#include <bits/stdc++.h>
using namespace std;
int findMaxXOR(int X) {
return ((1 << 8) - 1) ^ X;
}
int main() {
int X = 4;
cout << findMaxXOR(X) << endl;
return 0;
}
আউটপুট
251
4 (00000100) XOR 251 (11111011) = 255 (সর্বোচ্চ ৮-বিট মান)।