L
正の整数のリストがあり、別の数値が与えられたK
場合、XORK
が最大になるリスト内の数値を見つける必要があります。
そのためのアルゴリズムを考えました。反論でその正しさを検証したい。私のアルゴリズムは次のとおりです。
P
=K の補数 (1 の補数) を求めます。次に、リスト L で P に最も近い数を見つけます。この数を N とします。K と N の XOR は最大になります。- 与えられた数のセット内の数に最も近い数
I
は、I との差が最小である数です。
たとえば、P
リストよりも大きい数値は正しくありませんL
。でも数字的には合ってない<=P
?
反論/提案/アイデアを提供して、私が正しいかどうか教えてください.