这道题考试的时候看到有部分测试样例是比较简单的,于是乎根据公式写了几句,得了20分。剩下的不会了……
C++程序如下(20分):
#include <iostream>
using namespace std;
typedef unsigned long long ULL;
const ULL Q = 998244353;
int main()
{
ULL m, l, r;
cin >> m >> l >>r;
ULL k[m], a[r];
a[0] = 1;
for(int i=0; i<m; i++)
cin >> k[i];
for(int i=1; i<=r; i++){
a[i] = 0;
if(i < m){
for(int j=0; j<i; j++)
a[i] += (k[j] * a[i-j-1]) % Q;
}
else{
for(int j=0; j<m; j++)
a[i] += (k[j] * a[i-j-1]) % Q;
}
if(i >= l)
cout << a[i] << endl;
}
return 0;
}