思路
预处理前缀和然后滑动窗口找最大值的起始位置就行。
代码
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n,m,k,l;
int a[1010];
int b[1010];
int main()
{
scanf("%d",&k);
while(k--)
{
int res=0;
int idx=0;
int ans=-10000000;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
scanf("%d%d",&l,&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
a[i]+=a[i-1];
}
for(int i=1;i<=n-l+1;i++)
{
int x=a[i+l-1]-a[i-1];
if(x>ans)
{
ans=x;
res=i;
}
}
if(ans<0) printf("0\n");
else printf("%d\n",res);
}
return 0;
}