Cod sursa(job #669763)

Utilizator alexpascadiAlexandru Pascadi alexpascadi Data 27 ianuarie 2012 18:28:15
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>

using namespace std;

int v[50001],sum[50001];

int main()
{
    ifstream f("secv2.in");
    ofstream g("secv2.out");
    int i,N,K,sc=0,poz1,poz2,ne,smax;
    f>>N>>K;

    for(i=1;i<=N;i++)
    {
        f>>v[i];
        sum[i]=sum[i-1]+v[i];
    }

    ne=1;
    smax=sc=sum[K];
    ne=poz1=1;
    poz2=K;
    for(i=K+1;i<=N;i++)
    {
        if(sc+v[i]>=sum[i]-sum[i-K]) sc+=v[i];
        else
        {
            ne=i-K+1;
            sc=sum[i]-sum[i-K];
        }

        if(sc>smax)
        {
            smax=sc;
            poz1=ne;
            poz2=i;
        }
    }
    g<<poz1<<" "<<poz2<<" "<<smax<<"\n";
}