Cod sursa(job #1510589)

Utilizator Julian.FMI Caluian Iulian Julian. Data 25 octombrie 2015 12:51:28
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <iostream>
#include <fstream>
#define nmax 50009
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int d[nmax];
int main()
{long n,k,in,sf,summax,suma,sum,minim,xmax,poz,ymax,i,j,x;
    fin>>n>>k;
    in=1;sf=0;sum=0;

    for(i=1;i<=k;i++)
    {
        fin>>x;
        d[++sf]=x;
        sum+=x;
    }

    summax=sum;
    xmax=1;ymax=k;

  suma=0;
    for(i=k+1;i<=n;i++)
    {fin>>x;sum+=x;
    d[++sf]=x;
    poz=in-1;minim=0;
   /* suma=0; poz=in-1; minim=0;
    for(j=in;j<sf-k+1;j++)
    {suma+=d[j];
     if(suma<minim){minim=suma; poz=j;}
    }*/

    suma+=d[i-k];
    if(suma<0){minim=suma;suma=0;poz=sf-k;}

     in=poz+1;
     sum-=minim;

     if(sum>summax)
     {summax=sum;
     xmax=in;
     ymax=sf;}
    }

    fout<<xmax<<' '<<ymax<<' '<<summax;
}