Cod sursa(job #150390)

Utilizator katakunaCazacu Alexandru katakuna Data 6 martie 2008 21:44:03
Problema Secventa 2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<stdio.h>

long long a,s,b,n,k,i,v[50011],x[50011],max,p;


int main(){

FILE *f=fopen("secv2.in","r");
fscanf(f,"%lld %lld",&n,&k);
for(i=1;i<=n;i++){
fscanf(f,"%lld",&v[i]);
}
fclose(f);

max=-32010;

for(i=1;i<=k;i++){
x[k-1]+=v[i];
}


for(i=k;i<=n;i++){
x[i]=v[i]+x[i-1];
 if(max<=x[i]){
 p=i;
 max=x[i];
 }
}

b=p;
i=p;
x[i+1]=0;

for(i=p;i>=p-k+1;i--){
x[i]=x[i+1]+v[i];
}

i++;

max=-32010;

for(i=i;i>=1;i--){
x[i]=x[i+1]+v[i];

if(x[i]>=max){
p=i;
max=x[i];
}

}

a=p;
s=0;

for(i=a;i<=b;i++){
s+=v[i];
}



FILE *g=fopen("secv2.out","w");
fprintf(g,"%lld %lld %lld",a,b,s);
fclose(g);

return 0;
}