मान लीजिए कि हमारे पास दो सरणियाँ हैं arr1 और arr2। किसी सूची का XOR योग उसके सभी तत्वों का बिटवाइज़ XOR है। यदि सूची में केवल एक तत्व है, तो उसका XOR योग तत्व ही होगा। अब, मान लें कि सूची में प्रत्येक इंडेक्स जोड़ी (i, j) के लिए arr1[i] और arr2[j] (बिटवाइज AND) का परिणाम है, जहां 0 <=i
इसलिए, यदि इनपुट arr1 =[5,3,4] arr2 =[2,6] जैसा है, तो आउटपुट 0 होगा क्योंकि सूची [5 और 2, 5 और 6, 3 और 2, 3 और 6 है। , 4 और 2, 4 और 6] =[0, 4, 2, 2, 0, 4], अब XOR योग है [0 XOR 4 XOR 2 XOR 2 XOR 0 XOR 4] =0
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
xor1 :=0
xor2 :=0
arr1 में प्रत्येक a के लिए, करें
xor1 :=xor1 XOR a
arr2 में प्रत्येक a के लिए, करें
xor2 :=xor2 XOR a
xor1 और xor2 लौटाएं
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें
उदाहरण
def solve(arr1, arr2):
xor1 = 0
xor2 = 0
for a in arr1:
xor1 ^= a
for a in arr2:
xor2 ^= a
return xor1 & xor2
arr1 = [5,3,4]
arr2 = [2,6]
print(solve(arr1, arr2))
इनपुट
[5,3,4], [2,6]
आउटपुट
0