Cod sursa(job #2258501)

Utilizator NashikAndrei Feodorov Nashik Data 11 octombrie 2018 16:19:23
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
//#include <iostream>
#include <fstream>
using namespace std;
int sp[50005],v[50005];
int main()
{
    ifstream cin("secv2.in");
    ofstream cout("secv2.out");
    int n,k,a;
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a;
        sp[i]=sp[i-1]+a;
    }
    for(int i=1;i<=n;i++){
        if(sp[v[i-1]]<sp[i]){
            v[i]=v[i-1];
        }
        else
            v[i]=i;
    }
    long long maxim=50000*25000;
    maxim*=-1;
    int st,dr;
    for(int i=k;i<=n;i++){
        if(maxim<sp[i]-sp[v[i-k]]){
            maxim=sp[i]-sp[v[i-k]];
            st=v[i-k]+1;
            dr=i;
        }
    }
    cout<<st<<" "<<dr<<" "<<maxim;
    return 0;
}