Cod sursa(job #394633)
Utilizator | Data | 11 februarie 2010 11:59:18 | |
---|---|---|---|
Problema | Secventa 2 | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <stdio.h>
FILE *f=fopen ("secv2.in", "r");
FILE *g=fopen ("secv2.out", "w");
int v[50001],n,k,i,max=-1,k2,x,pozi,pozf;
int main() {
fscanf (f, "%d%d", &n, &k);
for (i=1;i<=n;i++)
{
fscanf (f, "%d", &x);
if (v[i-1]+x>0)
{
v[i]=v[i-1]+x;
k2++;
if (k2>=k)
if (v[i]>=max)
{
max=v[i];
pozf=i;
pozi=i-k2+1;
}
}
else
{
v[i]=0;
k2=0;
}
}
fprintf (g, "%d %d %d", pozi, pozf, max);
return 0;
}