私は質問が少し混乱するかもしれないと思う。だから私は最初にそれを説明しようとします。2つの数字の排他的論理和と和を考えると、それらを満たすペアの数を見つける方法は?
2つの数字のXORとSUMが与えられているとします。
たとえば、XORが5
であり、SUMが9
である場合、SUMとXORを満たす4
のペアがあります。それらは(2, 7)
,(3, 6)
,(6, 3)
,(7, 2)
です。従って2+7=9
および2^7=5
。
SUMとXORを満たす数字の番号を探したいだけです。したがって、私が答えた例では4
で十分です。どのペアがそれらを満たすかを知る必要はありません。
私はhereからこの問題を取りました。
回答hereを確認しました。それは十分ではないO(n)解を提供する。
この問題の解決方法を示す論説があります。これはhereです。
問題は、私は解決策を理解することができないということです(627Aの解決策を探してください)。 (そこに2つの数aがあり、B場合)、その後、 a+b = (a XOR b) + (a AND b)*2
がどのように私はそれに到着したのですか?私は
、彼らはこのような式を使用まとめることができるものから残りのステップは私には不明です。
誰かがこの問題を解決する方法や解決策を説明する方法があれば、助けてください。
この部分はわかりました。次に、この式を使って問題を解決するにはどうすればよいですか?私はどのように多くのペアが合計とxorを満たすかを数えますか? –