Cod sursa(job #1337963)

Utilizator GhermanGherman Stefan Gherman Data 9 februarie 2015 17:53:20
Problema Secventa 2 Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <iostream>
#include <fstream>
using namespace std;
int n,k,v[50000];
int main()
{
    int sc=-1,smax=-2000000000,sk=0,i,j,l,r;
    ifstream in("secv2.in");
    in>>n>>k;
    for(i=1;i<=n;i++)
    {
        in>>v[i];
    }
    for(i=1;i<=k;i++)
        sk=sk+v[i];
    sc=smax=sk;
    j=1;
    l=1;
    r=k;
    for(i=k+1;i<=n;i++)
        {
            sk=sk-v[i-k]+v[i];
            if(sk>sc+v[i])
            {
                sc=sk;
                j=i-k+1;
            }
            else
                sc=sc+v[i];
           if(sc>smax)
           {
            smax=sc;
            l=j;
            r=i;
           }
        }
        in.close();
        ofstream out("secv2.out");
        out<<l<<" "<<r<<" "<<smax;
        out.close();
    return 0;
}