Cod sursa(job #1769892)

Utilizator mihneaserbanmihnea serban mihneaserban Data 3 octombrie 2016 12:33:20
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <fstream>

using namespace std;
ifstream in("secv2.in");
ofstream out("secv2.out");
int v[50001];
int main()
{
    int a,b,n,k,i,j,s=0,mx=-100000;
    in>>n>>k;
    for(i=1;i<=n;i++)
    in>>v[i];
    a=1;
    b=k;
    int outa,outb;
    int copiek;
    copiek=k;
    while(copiek)
    {
        s=s+v[copiek];
        copiek--;
    }
    if(s>=mx)
    mx=s;
    outa=a;
    outb=b;


    for(i=k+1;i<=n;i++)
    {

        s=s+v[i]-v[a];
        a++;
        b++;
        if(s>mx)
        {
            mx=s;
            outa=a;
            outb=b;
        }
    }
    while(v[outa-1]>=0&&outa>=2)
    {
        outa--;
        mx+=v[outa];
    }
    while(v[outb+1]>=0&&outb<=n-1)
    {
        outb++;
        mx+=v[outb];
    }
    out<<mx<<'\n'<<outa<<" "<<outb;
    return 0;
}