题目

#include<iostream>
using namespace std;
const   int N=1010;
int dp[N][N];
const   int mod=1e8+7; 
int n,s,a,b; int get_mod(int x)
{
   
    return (x%n+n)%n;
}
int main()
{
   
    cin>>n>>s>>a>>b;
    dp[0][0]=1;
    for(int i=1;i<=n-1;i++)
    for(int j=0;j<=n-1;j++)
    dp[i][j]=(dp[i-1][get_mod(j-a*i)]+dp[i-1][get_mod(j+b*i)])%mod;
    printf("%d\n",dp[n-1][get_mod(s)]);
    return 0;
}