2017-04-06 4 views
0

xor를 사용하여 두 숫자를 서로 바꿔서 질문이 생겼습니다. 그래서 그것은 기본적으로 x=x^y; y=x^y; x=x^y이고, 나는 y가 x가되도록 y=(x^y)^y=x을 생각할 수 있습니다. 그러나 마지막 하나는 그렇지 않습니다. x=x^y = (x^y)^(x^y)= 0? x는 어떻게 y가됩니까?xor 두 자리 숫자가 바뀝니다?

+0

그렇지 않을 수도 있습니다. –

+1

제안 : x = 123 및 y = 82 또는 기타 구체적인 값을 사용하여 알고리즘을 수동으로 실행 해보십시오. 그러면 알고리즘이 작동하지 않는 이유와 이유에 대한 가정이 사실인지 아닌지를 알 수 있습니다. –

답변

0
x=x^y 
y=(x^y)^y 
x=(x^y)^((x^y)^y) //here is how you get x = y 

잘못 입력했습니다.

관련 문제