AT_abc156_e [ABC156E] Roaming
Description
[problemUrl]: https://atcoder.jp/contests/abc156/tasks/abc156_e
$ n $ 個の部屋がある建物があります。 部屋には $ 1 $ から $ n $ までの番号が付いています。
建物の各部屋から、他の任意の部屋に移ることが可能です。
ここで、建物のある部屋 $ i $ にいる人が、別の部屋 $ j~\ (i\ \neq\ j) $ に移ることを **人の移動** と呼ぶことにします。
最初、建物の各部屋には人が $ 1 $ 人いました。
このあと現在までに、人の移動がちょうど $ k $ 回起きたことが分かっています。
現在、建物の各部屋にいる人の数の組合せとして、ありえるものは何通りでしょうか。
$ (10^9\ +\ 7) $ で割った余りを求めてください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ n $ $ k $
Output Format
現在、建物の各部屋にいる人の数の組合せとして、ありえるものの個数を $ (10^9\ +\ 7) $ で割った余りを出力せよ。
Explanation/Hint
### 制約
- 入力は全て整数である。
- $ 3\ \leq\ n\ \leq\ 2\ \times\ 10^5 $
- $ 2\ \leq\ k\ \leq\ 10^9 $
### Sample Explanation 1
現在、部屋 $ 1 $ にいる人の数を $ c_1 $、部屋 $ 2 $ にいる人の数を $ c_2 $、部屋 $ 3 $ にいる人の数を $ c_3 $ と すると、$ (c_1,\ c_2,\ c_3) $ としてありえるものは、 - $ (0,\ 0,\ 3) $ - $ (0,\ 1,\ 2) $ - $ (0,\ 2,\ 1) $ - $ (0,\ 3,\ 0) $ - $ (1,\ 0,\ 2) $ - $ (1,\ 1,\ 1) $ - $ (1,\ 2,\ 0) $ - $ (2,\ 0,\ 1) $ - $ (2,\ 1,\ 0) $ - $ (3,\ 0,\ 0) $ の $ 10 $ 通りです。 例えば、まず部屋 $ 1 $ にいる人が部屋 $ 2 $ に移動し、 次に部屋 $ 2 $ にいる誰かが部屋 $ 3 $ に移動した場合を考えると、 $ (c_1,\ c_2,\ c_3) $ は $ (0,\ 1,\ 2) $ になります。
### Sample Explanation 2
個数を $ (10^9\ +\ 7) $ で割った余りを出力してください。