Cod sursa(job #42594)
Utilizator | Alex Vladescu alex3el_n2o | Data | 29 martie 2007 12:49:20 |
---|---|---|---|
Problema | Secventa 2 | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include <stdio.h>
FILE *f=fopen("secv2.in","r"), *g=fopen("secv2.out","w");
int main()
{
int x[32000];
long n,i,k,poz,st,lg,smax,sum;
fscanf(f,"%d%d",&n,&k);
for (i=0;i<n;i++)
fscanf(f,"%d",&x[i]);
st=0;
lg=1;
smax=x[0];
sum=x[0];
poz=0;
for (i=1;i<n;i++)
{
if (sum<0)
{
sum=x[i];
st=i;
}
else
{
sum+=x[i];
if ((smax<sum)&&(i-st>k))
{
smax=sum;
poz=st;
lg=i-st+1;
}
}
}
fprintf(g,"%d %d %d\n",poz+1,poz+lg,smax);
return 0;
}