W Javie jest funkcja XOR - a^b
Na przykład: 5^3 = 6
Czy możesz mi powiedzieć funkcję odwrotną? Jeśli mam 6
i 3
czy mogę uzyskać zakres liczb obejmujący liczbę 5
?
Odpowiedzi:
Odwrotnością jest XOR!
Jeśli masz:
c = a^b;
Możesz otrzymać a
lub b
zwrócić, jeśli masz dostępną inną wartość:
a = c^b; // or b^c (order is not important)
b = c^a; // or a^c
Na przykład, jeśli a = 5
, b = 3
(a zatem c = 6
, jak wspomniano) można uzyskać:
b=0011 (3) a=0101 (5)
c=0110 (6) XOR or c=0110 (6) XOR
---------- ----------
a=0101 (5) b=0011 (3)