CE显示main必须返回int
#include <bits/stdc++.h>
#define int long long
#define DoNotOpen freopen
using namespace std;
const int maxn=2e6+5;
int n,q;
int a[5005],b[maxn*2];
int f[5005][5005];
int main(){
DoNotOpen("3sum.in","r",stdin);
DoNotOpen("3sum.out","w",stdout);
cin>>n>>q;
for (int i=1;i<=n;i++) cin>>a[i];
for (int i=1;i<=n;i++) {
for (int j=i+1;j<=n;j++) {
f[i][j]=b[maxn-a[i]-a[j]];
b[a[j]+maxn]++;
}
for (int j=i+1;j<=n;j++) b[a[j]+maxn]=0;
}
for (int i=3;i<=n;i++) {
for (int j=1;j<=n-i+1;j++) {
int k=i+j-1;
f[j][k]+=f[j+1][k]+f[j][k-1]-f[j+1][k-1];
}
}
while (q--) {
int x, y;
cin>>x>>y;
cout<<f[x][y]<<endl;
}
return 0;
}