Блог пользователя Ishtiaq11

Автор Ishtiaq11, история, 8 лет назад, По-английски

Given an array of n-2 unique numbers in range 1 to n (inclusive). I want to find the missing two numbers in the array using xor. Please help me providing the idea. Thanks in advance.

Теги xor
  • Проголосовать: нравится
  • 0
  • Проголосовать: не нравится

»
8 лет назад, # |
Rev. 2   Проголосовать: нравится 0 Проголосовать: не нравится

May I wrong...

Maximum you may get : xor of missing two numbers. But xor of different numbers may be equal. See http://rextester.com/BBMAI41221 , so I think that you cannot find this two numbers from XOR operation.

Let your's missing numbers 2*m , and 2*m + 1, but for any m : (2*m) XOR (2*m+1) = 1. How you can find they??

Why you do not use simplist way: bool visit[n] array )) ? It's O(n) algo, and O(n) memory.