Cod sursa(job #3278632)

Utilizator Andrada_MincaAndrada Minca Andrada_Minca Data 20 februarie 2025 12:29:56
Problema Secventa 2 Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
//
//  main.cpp
//  secventa2
//
//  Created by Andrada Minca on 20.02.2025.
//

#include <fstream>
#include <deque>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int n,k,a[50005],s[50005];
int main()
{
    fin >>n>>k;
    for(int i=1;i<=n;i++)
    {
        fin>>a[i];
        s[i]=s[i-1]+a[i];
    }
    deque <int> dq;
    int st=1,dr=k,vmax=s[k];
    for(int i=k;i<=n;i++)
    {
        while(!dq.empty()&&s[i-k]<=s[dq.back()]) dq.pop_back();
        dq.push_back(i-k);
        if(vmax<s[i]-s[dq.front()])
        {
            vmax=s[i]-s[dq.front()];
            dr=i;
            st=dq.front()+1;
        }
    }
    fout<<st<<" "<<dr<<" "<<vmax;
    return 0;
}