0からn−1までのn個の整数を要素とする集合Uの部分集合Tが与えられます。Tの全ての部分集合を列挙してください。ただし、0からn−1をそれぞれ2進数の00...0001、00...0010、00...0100、...、10...0000とし、存在する要素のビットごとの論理和を取ったものをその部分集合の整数値とします。
入力は以下の形式で与えられます。
n kb0b1...bk−1
kはT の要素数で、bi はTに含まれる要素を示します。
部分集合をそれらの整数値の昇順で出力してください。1つの部分集合は以下の形式で出力してください。
d: e0 e1 ...
整数値dの後にコロン:、続けて部分集合に含まれる要素eiを昇順で空白付きで出力してください。
4 2 0 2
0: 1: 0 4: 2 5: 0 2