Cod sursa(job #2191403)

Utilizator cevacevaaltceva cevaceva Data 2 aprilie 2018 19:11:09
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.18 kb
#include <fstream>

using namespace std;

ifstream cin("tort.in");
ofstream cout("tort.out");

int main()
{
    int n,k;
    cin>>n>>k;
    int vec[n];
    for(int i=0; i<n; i++)
        cin>>vec[i];
    int sum=0,first=0,last=k-1,mij,maxx=0;
    int rf,rl;
    for(int i=first; i<=last; i++)
        sum+=vec[i];
    for(int i=last+1; i<n; i++)
    {
        if(sum<1)
        {
            first++;
            last=first+k-1;
            sum=0;
            for(int i=first; i<=last; i++)
                sum=sum+vec[i];
        }
        else
        {
            if(sum>=maxx)
            {
                maxx=sum;
                rf=first;
                rl=last;
            }
            mij=sum/2;
            if(mij<sum+vec[i])
            {
                last++;
                sum=sum+vec[i];
            }
            else
            {
                sum=0;
                first++;
                last=first+k-1;
                for(int i=first; i<=last; i++)
                    sum=sum+vec[i];
            }
        }
        ///cout<<sum<<" "<<first<<" "<<last<<"!\n";
    }
    cout<<rf+1<<" "<<rl+1<<" "<<maxx;
    return 0;
}