AT_agc070_c [AGC070C] No Streak

Description

Alice と Bob はじゃんけんを $ N $ 回行いました。 $ 1 $ 回のじゃんけんの結果は「Alice の勝ち」「Bob の勝ち」「引き分け」のいずれかです。 以下の条件を満たす $ N $ 回のじゃんけんの結果は何通りありますか?答えを $ \bf{1000000007 = 10^9 + 7} $ で割った余りを求めてください。 - $ N $ 回のうち Alice が勝ったのは $ A $ 回、Bob が勝ったのは $ B $ 回だった。 - Alice が引き分けを挟まずに $ 2 $ 連続で勝つことはなかった。 - Bob が引き分けを挟まずに $ 2 $ 連続で勝つことはなかった。 - どの時点においても Alice の勝利数が Bob の勝利数を下回ることはなかった。形式的に説明すると、 $ 1 \leq i \leq N $ を満たす $ i $ 全てに対して、「じゃんけんが $ i $ 回終了した時点での Alice の勝利数」は「じゃんけんが $ i $ 回終了した時点での Bob の勝利数」以上だった。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ A $ $ B $

Output Format

条件を満たす $ N $ 回のじゃんけんの結果の個数を $ 10^9 + 7 $ で割った余りを求めよ。

Explanation/Hint

### Sample Explanation 1 例えば、次の $ N $ 回のじゃんけんの結果は問題文の条件を満たします。 - $ 1 $ 回目のじゃんけんで Alice が勝つ。 - $ 2 $ 回目のじゃんけんで Bob が勝つ。 - $ 3 $ 回目のじゃんけんで Alice が勝つ。 - $ 4 $ 回目のじゃんけんで両者が引き分ける。 - $ 5 $ 回目のじゃんけんで Bob が勝つ。 一方、次の $ N $ 回のじゃんけんの結果は **問題文の条件を満たしません**。なぜならば、 $ 4 $ 回目のじゃんけんが終了した時点で Alice の勝利数 $ (= 1) $ が Bob の勝利数 $ (= 2) $ を下回っているからです。 - $ 1 $ 回目のじゃんけんで Alice が勝つ。 - $ 2 $ 回目のじゃんけんで Bob が勝つ。 - $ 3 $ 回目のじゃんけんで両者が引き分ける。 - $ 4 $ 回目のじゃんけんで Bob が勝つ。 - $ 5 $ 回目のじゃんけんで Alice が勝つ。 問題文の条件を満たす結果は全部で $ 5 $ 通りあります。 ### Sample Explanation 2 個数を $ 10^9 + 7 $ で割った余りを求める点に注意してください。 ### Constraints - $ 2 \leq N \leq 2 \times 10^7 $ - $ 1 \leq B \leq A $ - $ A + B \leq N $ - $ N, A, B $ は整数