2
いくつかのビットを削除してカウントする
2^n長さのすべての異なるバイナリ文字列を考慮しn、仮定しn > 2ます。b < n/2各バイナリ文字列からビットを正確に削除して、n-b残りの長さの文字列を残すことができます。残っている個別の文字列の数は、削除するビットによって異なります。残りの異なる文字列をできる限り少なくすることが目的であると仮定すると、この課題は、の関数として残すことができる文字数を計算するコードを記述することですn。 例、n=3およびb = 1。2つの文字列11とのみを残すことができます00。 ためn=9とb = 1,2,3,4、私たちは持っています70,18,6,2 ためn=8とb = 1,2,3、私たちは持っています40,10,4 ためn=7とb = 1,2,3、私たちは持っています20,6,2 ためn=6とb = 1,2、私たちは持っています12,4 ためn=5とb = 1,2、私たちは持っています6,2 この質問は、元々、MOに関する別の形式で2014年に私によって提起されました。 入出力 コードは整数nを取り込んで、b開始b = 0から増加する各値に対して単一の整数を出力する必要があります。 スコア あなたのスコアは、私のLinuxベースのPCで1分以内にnすべてのコードが完了する最大のものb < n/2です。タイブレークの場合b、コードが獲得できる最大の値は、共同で最大の値をn獲得します。、あまりにもその基準にタイブレークの場合の最大値のための最速のコードnとbを決定します。時間が1〜2秒以内であれば、最初に投稿された回答が優先されます。 言語とライブラリ 任意の言語のライブラリを使用できます。私はあなたのコードを実行しなければならないので、それが無料で(ビールのように)Linuxで動作する場合に役立ちます。
26
fastest-code