Cod sursa(job #122193)
Utilizator | Serban Andrei Stan savim | Data | 11 ianuarie 2008 12:04:28 |
---|---|---|---|
Problema | Secventa 2 | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.55 kb |
#include <stdio.h>
int main()
{
int s[50001],a[50001];
int max,min,p1,p2,i,j,k,t,n;
FILE *f1,*f2;
f1=fopen("secv2.in","r");
f2=fopen("secv2.out","w");
fscanf(f1,"%d%d",&n,&k);
s[0]=0;
for (i=1; i<=n; i++)
{
fscanf(f1,"%d",&a[i]);
s[i]=s[i-1]+a[i];
}
j=0;max=-2000000000;min=0;t=0;
for (i=k; i<=n; i++)
{
if (s[j]<min)
{
min=s[j];
t=j;
}
if (s[i]-min>max)
{
max=s[i]-min;
p1=t;
p2=i;
}
j++;
}
fprintf(f2,"%d %d %d\n",p1+1,p2,max);
fclose(f1);
fclose(f2);
return 0;
}