ধরুন আমাদের একটি অ্যারে আছে A[] যার n পজিটিভ উপাদান আছে। আমাদের আরেকটি অ্যারে B তৈরি করতে হবে, যেমন B[i] হল A[i] ব্যতীত A[] এর সমস্ত উপাদানের XOR। সুতরাং যদি A =[2, 1, 5, 9], তাহলে B =[13, 14, 10, 6]
এটি সমাধান করার জন্য, প্রথমে আমাদের A এর সমস্ত উপাদানের XOR খুঁজে বের করতে হবে এবং এটিকে x ভেরিয়েবলে সংরক্ষণ করতে হবে, তারপর A[i]-এর প্রতিটি উপাদানের জন্য B[i] =x XOR A[i]
উদাহরণ
#include <iostream>
using namespace std;
void findXOR(int A[], int n) {
int x = 0;
for (int i = 0; i < n; i++)
x ^= A[i];
for (int i = 0; i < n; i++)
A[i] = x ^ A[i];
}
int main() {
int A[] = {2, 1, 5, 9};
int n = sizeof(A) / sizeof(A[0]);
cout << "Actual elements: ";
for (int i = 0; i < n; i++)
cout << A[i] << " ";
cout << endl;
cout << "After XOR elements: ";
findXOR(A, n);
for (int i = 0; i < n; i++)
cout << A[i] << " ";
} আউটপুট
Actual elements: 2 1 5 9 After XOR elements: 13 14 10 6