セットのN番目のサブセット
タスク 与えられたセット S=[1,2,3,4,5,6,7,8]S=[1,2,3,4,5,6,7,8]S = \left[{1,2,3,4,5,6,7,8}\right] および整数 0≤N<2|S|0≤N<2|S|0 \leq N < 2^{|S|} N番目のサブセットを見つけます。 入出力 Nは、stdinで符号なし整数として指定されます。あなたはあなたの言語に適した形式でN番目のサブセットを印刷する必要があります(この含むことができ[1,2,3]、{1,2,3}、[1, 2, 3]、1 2 3、1,2,3などのために長い間、それは人間が読めるな限りテキスト形式)。 サブセットについて少し サブセットとベース2の数値の間には関係があります。各数字 didid_{i}は、セットのi番目の要素がサブセット内にあるかどうかを指定します。たとえば、00000000は空のセットで、10000001は[1,8](最後と最初の要素)を含むサブセットです。N番目のサブセットを取得するには、数値を基数2に変換すると、サブセットにすべての要素が含まれます(di>0di>0d_{i} > 0。したがって、3番目のサブセット(3 = 00000011)にはが含まれます[1,2]。右端の数字は数字#0です。印刷しても構いません[2,1]。セットをソートする必要はありません。 補遺: はい、セットはに固定されてい1..8ます。セットは入力の一部ではありません。入力はちょうどNです。 はい、別の入力フォームを使用できます。 すべてのNのすべての予想出力:https : //tio.run/##SyotykktLixN/f/fyNS02qIoP8soJd1CwSAg2kY32LPWPaoqs7jg/38A