Cod sursa(job #266633)

Utilizator Cristy94Buleandra Cristian Cristy94 Data 25 februarie 2009 21:52:44
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include<values.h>
#include<fstream.h>
ifstream f("secv2.in");
ofstream g("secv2.out");
long k,n,i,s,a[50001],b[50001],x,max;
int main(){
f>>n>>k;a[0]=0;b[0]=25001;
for(i=1;i<=n;i++){
f>>x;
a[i]=a[i-1]+x;
if(a[i]<b[i-1]){
 if(a[i]<0)b[i]=a[i];}
else if(b[i-1]<0)b[i]=b[i-1];
}
max=-MAXLONG-1;b[0]=0;
for(i=k;i<=n;i++)
 if(a[i]-b[i-k]>=max){
  max=a[i]-b[i-k];
  x=i;}
s=max;
for(i=x;s!=0;i--)
   s=s-a[i]+a[i-1];
g<<i+1<<" "<<x<<" "<<max;
return 0;
}