Cod sursa(job #2728297)

Utilizator EmiHHodoroaba Emanuel EmiH Data 23 martie 2021 00:03:34
Problema Deque Scor 5
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <iostream>
#include <fstream>
#include <deque>

using namespace std;
int findMin(deque<int> &a){
    int re=a.front();
    for(auto x:a){
        if(x<re)re=x;
    }
    return re;
}
int main()
{
    ifstream in("deque.in");
    ofstream out("deque.out");
    int n,k,x,rez=0,prev;
    deque<int> d;
    in >> n;
    in >> k;
    for(int i=1;i<=k;i++){
            in >> x;
        d.push_back(x);
    }
    rez+=findMin(d);
    prev=rez;
    for(int i=1;i<=n-k;i++){
        in >> x;
        d.push_back(x);
        if(x<prev){
            prev=x;
            rez+=x;
        }else{
            if(d.front()==prev){
                d.pop_front();
                prev=findMin(d);
            }
                d.pop_front();
                rez+=prev;
        }
    }

    out << rez;
    return 0; ////    1 2 3 4
}