3646. [GESP202403 六级] 游戏
时间限制:1000 MS    内存限制:256 MB
题目描述

你有四个正整数 $ n,a,b,c $  并准备用它们玩一个简单的小游戏。

在一轮游戏操作中,你可以选择将 $ n $ 减去 $ a $ ,或是将 $ n $ 减去 $ b $ 。游戏将会进行多轮操作,直到当 $ n \le c $ 时游戏结束。

你想知道游戏结束时有多少种不同的游戏操作序列。两种游戏操作序列不同,当且仅当游戏操作轮数不同,或是某一轮游戏操作中,一种操作序列选择将 $ n $ 减去 $ a $ ,而另一种操作序列选择将 $ n $ 减去 $ b $ 。

如果 $ a=b $ ,也认为将 $ n $ 减去 $ a $ 与将 $ n $ 减去 $ b $ 是不同的操作。

由于答案可能很大,你只需要求出答案对 $1000000007$ 取模的结果。


输入格式

一行四个正整数 $ n,b,a,c $ 。保证 $ 1 \le a,b,c \le n $ 。


输出格式

一行一个整数,表示不同的游戏操作序列数量对 $1000000007$ 取模的结果。


样例输入1

1 1 1 1

样例输出1

1

样例输入2

114 51 4 1

样例输出2

176

 样例输入3

114514 191 9 810

样例输出3

384178446

数据范围
对于 $ 20\% $ 的测试点,保证 $ a=b=c=1 $ , $ n \le 30 $ 。
对于 $ 40\% $ 的测试点,保证 $ c=1 $ , $ n \le 10^3 $ 。
对于所有测试点,保证 $ 1 \le n \le 2×10^5 $ 。