Cod sursa(job #2509698)

Utilizator RobyChiriRobert RobyChiri Data 14 decembrie 2019 16:03:20
Problema Deque Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>
#include <deque>

using namespace std;
using ll = long long;

ifstream fin("deque.in");
ofstream fout("deque.out");

int n, k, a, mini_g = 10000001;
ll sum;
deque<int> x;

int mini(deque<int> x){
    int mini = 100000001;
    for (deque<int>::iterator it = x.begin(); it != x.end(); it++){
        mini = min(mini, *it);
        if (mini == mini_g){
            return mini;
        }
    }
    return mini;
}

int main(){
    fin >> n >> k;
    for (int i = 0; i < n; i++){
        fin >> a;
        mini_g = min(mini_g, a);
        if (i >= k){
            sum += mini(x);
            x.pop_front();
        }
        x.push_back(a);
    }
    sum += mini(x);
    fout << sum;
    return 0;
}