Pagini recente » Cod sursa (job #256096) | Cod sursa (job #550280) | Cod sursa (job #870807) | Cod sursa (job #555892) | Cod sursa (job #825209)
Cod sursa(job #825209)
#include <cstdio>
using namespace std;
const int maxn = 50005;
short v[maxn];
int sum[maxn];
int main()
{
freopen("secv2.in","r",stdin);
setvbuf(stdin,NULL,_IOFBF,1024);
freopen("secv2.out","w",stdout);
int n,k,i;
int suma;
int pos;
int min;
int max = -(1<<30);
scanf("%d %d",&n,&k);
for(i=1;i<=n;++i)
{
scanf("%d",&v[i]);
sum[i] = sum[i-1] + v[i];
}
int start = 1;
int left=1,right=k;
int vcurenta = sum[k];
for(i=k+1;i<=n;++i)
{
vcurenta += v[i];
if(sum[i]-sum[i-k] > vcurenta)
{
vcurenta = sum[i]- sum[i-k];
start = i-k;
}
if(vcurenta > max)
{
max = vcurenta;
left = start;
right = i;
}
}
printf("%d %d %d\n",left+1,right,max);
return 0;
}