Cod sursa(job #3238035)

Utilizator BucsMateMate Bucs BucsMate Data 15 iulie 2024 18:25:08
Problema Deque Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.87 kb
#include <iostream>
#include <fstream>
#include <deque>

using namespace std;

ifstream input("deque.in");
ofstream output("deque.out");

int main()
{
    deque<pair<int, int>> sor;
    int temp, k;
    input >> temp >> k;
    int x, index = 0;
    long long s = 0;
    while(input >> x){
        sor.push_back({x, index});
        index++;
        if(sor[sor.size()-1].second - sor[0].second >= k){
            sor.pop_front();
        }
        for(int i = sor.size()-2; i >= 0; i--){
            if(sor[i].first >= sor[sor.size()-1].first){
                sor.erase(sor.begin() + i);
            }
        }
        if(index >= 3){
            s += sor.front().first;
        }
        /*for(auto it = sor.begin(); it != sor.end(); it++){
            cout << (*it).first << " " << (*it).second << "; ";
        }*/
    }
    output << s;
    return 0;
}