時間制限 : sec, メモリ制限 : KB
English / Japanese  

Enumeration of Combinations

$0$から$n-1$までの$n$個の整数の中から異なる$k$個の整数を選ぶ組み合わせを列挙してください。ただし、$0$から$n-1$をそれぞれ2進数の00...0001、00...0010、00...0100、...、10...0000とし、選択した要素のビットごとの論理和を取ったものをその組み合わせの整数値とします。

Input

入力は以下の形式で与えられます。

$n \; k$

Output

組み合わせをそれらの整数値の昇順で出力してください。1つの部分集合は以下の形式で出力してください。

$d$: $e_0$ $e_1$ ...

整数値$d$の後にコロン:、続けて組み合わせに含まれる整数$e_i$を昇順で空白付きで出力してください。

Constraints

  • $1 \leq n \leq 18$
  • $k \leq n$

Sample Input 1

5 3

Sample Output 1

7: 0 1 2
11: 0 1 3
13: 0 2 3
14: 1 2 3
19: 0 1 4
21: 0 2 4
22: 1 2 4
25: 0 3 4
26: 1 3 4
28: 2 3 4