题目

image-1667824523881

题解

题解参考这个:https://www.acwing.com/solution/content/9223/

#include<iostream>
using namespace std;
const int N=1010,mod=100000007;
int f[N][N];
int n,s,a,b;
int get_mod(int a,int b){
    return (a%b+b)%b;
}
int main(){
    cin>>n>>s>>a>>b;
    f[0][0]=1;
    for(int i=1;i<n;i++)
        for(int j=0;j<n;j++)
            f[i][j]=(f[i-1][get_mod(j-(n-i)*a,n)]+f[i-1][get_mod(j+(n-i)*b,n)])%mod;
    
    cout<<f[n-1][get_mod(s,n)];
    
    
    return 0;
    
}