ちょうどk
ビットが設定された最小の整数、つまり別の整数x
より大きい値を計算したいとします。例えば別の整数xより大きいkビットのセットで最小の整数を計算しますか?
、答えはk=4
ため1010000
でなければなりませんk=2
ため そしてx = 1001010
場合、答えは1001011
あるべきとk=5
のための答えは、私は1つが、少なくとも同じに設定する必要があるだろうと思い1001111
です整数x
に設定されている左端のビットとして多くのビットを設定し、次に左端のセットビットに隣接するMSB側のビットをx
に設定するか、次に左端のセットビットを設定してから、ザ・サ私は処理する。 kの残りのビットを数えながらすべて
これが正しいアプローチであるかどうかはわかりません。
理解することは、あなたの質問にははるかに容易になりますサンプル入力/出力を提供します。 2つの整数のビット数を同じにする必要がありますか? – xvatar
@xvatar私は 'x'と' k'は両方ともプログラムの入力、すなわち 'x = 1001010'、' k = 2'は '1010000'を返すと思います – ffao
これは宿題ではありませんよね? –