#pragma GCC optimize("O3") #pragma GCC optimize("Ofast") #pragma GCC optimize("unroll-loops") #pragma GCC target("avx,avx2") #include #define INF 1000000001LL #define LNF 1000000000000000001LL #define MOD 1000000007LL #define MAX 502 #define long long long #define all(x) x.begin(),x.end() using namespace std; long dp[100][20001]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n,s,k; cin >> n >> s >> k; for(int i = 0; i<=s; i+=n) dp[0][i] = 1; for(int i = 1; i hap(s+1); for(int j = 0; j<=s; j++) { if(j+k*(n-i) <= s) { hap[j+k*(n-i)]+=dp[i-1][j]; hap[j+k*(n-i)]%=MOD; } } for(int j = 0; j