RT
谢谢各位大佬帮忙啦
#include<bits/stdc++.h>
#define MAXN 1011
#define MAXV 20011
#define For(i,s,e) for(register int i=s;i<=e;++i)
#define Max(x,y) (x>y?x:y)
#define ull unsigned long long
const ull mod=998244353;
ull ans;
ull f[MAXN][MAXV];
int n;
int a[MAXN];
int max=-1,min=MAXV;
int main(){
scanf("%d",&n);
For(i,1,n){
scanf("%d",&a[i]);
max=Max(max,a[i]);
}
For(i,2,n)
For(j,1,i-1){
f[i][a[i]-a[j]+max]=(f[i][a[i]-a[j]+max]+f[j][a[i]-a[j]+max]+1)%mod;
ans=(ans+f[j][a[i]-a[j]+max]+1)%mod;
}
printf("%lld",(ans+n)%mod);
return 0;
}