Pagini recente » Monitorul de evaluare | Cod sursa (job #1211364) | Cod sursa (job #2367056) | Cod sursa (job #2007090) | Cod sursa (job #1576772)
#include <stdio.h>
#include <stdlib.h>
int vector[50001];
int main()
{
int n,k,i,x,sumacur,suma,pc,p,u;
FILE *fin,*fout;
fin=fopen("secv2.in","r");
fout=fopen("secv2.out","w");
fscanf(fin,"%d%d",&n,&k);
for(i=1; i<=k; i++)
{
fscanf(fin,"%d",&x);
vector[i]=vector[i-1]+x;
}
sumacur=suma=vector[k];
pc=p=1;
u=k;
for(i=k+1; i<=n; i++)
{
fscanf(fin,"%d",&x);
vector[i]=vector[i-1]+x;
if(vector[i]-vector[i-k]>sumacur+x)
{
pc=i-k+1;
sumacur=vector[i]-vector[i-k];
}
else
sumacur=sumacur+x;
if(sumacur>suma)
{
suma=sumacur;
p=pc;
u=i;
}
}
fprintf(fout,"%d %d %d\n",p,u,suma);
fclose(fin);
fclose(fout);
return 0;
}