Cod sursa(job #669855)

Utilizator ion824Ion Ureche ion824 Data 27 ianuarie 2012 21:28:22
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include<fstream>
#define nmax 50005
using namespace std;
int a[nmax],sp[nmax],l[nmax],m[nmax];
ofstream fout("secv2.out");
//void scrie(int z[],int n){ for(int i=1;i<=n;++i)fout<<z[i]<<' '; fout<<'\n'; }

int main(void){
    ifstream fin("secv2.in");

    int n,k,i,j,min=0,st,sf,smax=-26000,p=0;
    fin>>n>>k;
    
    for(i=1;i<=n;++i){ fin>>a[i]; sp[i]=sp[i-1]+a[i]; if(sp[i]<min){ min=sp[i]; p=i; } m[i]=min; l[i]=p; } fin.close();
    if(n==k)fout<<"1 "<<n<<' '<<sp[n];
    else
    {
    for(i=1;i<=n;++i)     
       if(i-k>0)
          if(sp[i]-m[i-k]>smax){
                        smax=sp[i]-m[i-k];
                        st=l[i-k]+1;
                        sf=i;
                        }
    fout<<st<<' '<<sf<<' '<<smax;  
}                                                       
 return 0;                 
}