Start: 2025-07-20 17:50:00

暑假训练赛10

End: 2025-07-20 20:40:00
Now  2025-08-11 18:14:21  类型: IOI  状态: Ended 

P4. 再次抓住牛
Description

吴老师 进入了游戏世界,变成了一个二维小人,站在了一个长度为 n 的尺子上,尺子上有 n+1 个刻度 0\sim n

吴老师 在刻度 a 的位置,牛在刻度 b 的位置。每次 吴老师 可以往左或者或者往右跳,每次可以跳一个刻度或者两个刻度,但不能跳到一个跳过了的位置,一但跳到了牛的位置 吴老师 会立刻停止。

请你算算 吴老师 有多少种方案跳到牛的位置。

比如上面的例子中,吴老师 有如下这些方法:

  • 1 -> 2 -> 3

  • 1 -> 2 -> 4 -> 3

  • 1 -> 0 -> 2 -> 3

  • 1 -> 0 -> 2 -> 4 -> 3

  • 1 -> 3


Input

三个数 n,a,b

Output

输出 吴老师 有多少种方案跳到牛的位置。次数可能会很多,请输出对 10^9+7 取模后的结果。

Examples

Input

4 1 3

Output

5

Input

4 3 4

Output

4

Input

1000000 400000 500000

Output

727245392
Hint

样例2有下面这些方案

  • 3 -> 4

  • 3 -> 1 -> 2 -> 4

  • 3 -> 2 -> 4

  • 3 -> 1 -> 0 -> 2 -> 4



对于 100\% 的数据,1 \le n \le 10^60\le a,b\le na\neq b

  • 子任务 1(10 分):保证 n\le 10a=0b=n

  • 子任务 2(20 分):保证 a=0b=n

  • 子任务 3(30 分):保证 n\le 20

  • 子任务 4(40 分):没有特殊限制。


Submit

题目参数
Time Limit 1 second
Memory Limit 128 MB
Submit