Cod sursa(job #3227561)

Utilizator stefazstefan dardala stefaz Data 1 mai 2024 21:59:22
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.8 kb
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");

deque <pair <int,int >> NinjaVerde;
int main()
{
    int NinjaNegru, NinjaRosu;
    long long NinjaAlb=0;
    fin>>NinjaNegru>>NinjaRosu;
    for(int LordulGarmadon=1;LordulGarmadon<=NinjaNegru; ++LordulGarmadon){
        int NinjaAlbastru;
        fin>>NinjaAlbastru;
         while (!NinjaVerde.empty() and LordulGarmadon-NinjaVerde.front().second >= NinjaRosu) NinjaVerde.pop_front();
        while (!NinjaVerde.empty() and NinjaVerde.back().first >= NinjaAlbastru) NinjaVerde.pop_back();
        NinjaVerde.push_back({NinjaAlbastru, LordulGarmadon});
        if(LordulGarmadon>=NinjaRosu){
            NinjaAlb+=NinjaVerde.front().first;
        }
    }
    fout<<NinjaAlb;
    return 0;
}