提交时间:2022-05-05 13:25:15

运行 ID: 49274

#include <bits/stdc++.h> using namespace std; int n,K,k1,k2; int f[51][40001]; const int Mod=998344353; int main() { cin>>n>>K>>k1>>k2; long long rec=(n*10*K); f[2][int(pow(k1,n))*k1+int(pow(k1,n-1))*k2+rec]=1; for(int i=3; i<=n+1; i++) { long long a=int(pow(k1,n-i+1))%11; for(int j=-rec; j<=rec; j++) { for(int k=-K; k<=K; k++) if(j-a*k+rec>=0) { f[i][j+rec]+=f[i-1][j-a*k+rec]; f[i][j+rec]%=Mod; } } } cout<<f[n+1][k2+rec]<<'\n'; return 0; }