Cod sursa(job #2374807)

Utilizator AndoneAlexandruAndone Alexandru AndoneAlexandru Data 7 martie 2019 20:34:40
Problema Deque Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <fstream>
#include <deque>
#define NMAX 5000000
#define VMAX 10000000
using namespace std;

ifstream f("deque.in");
ofstream g("deque.out");

deque<int> q;
int n, k;
int a[NMAX];
long long int s_val_min, val_min = VMAX;

int main() {
    f >> n >> k;
    for (int i = 0; i < k; ++i) {
        f >> a[i];
        q.push_back(i);
        if (a[i] < val_min) val_min = a[i];
    }
    s_val_min = val_min;
    val_min = VMAX;
    for (int i = k; i < n; ++i) {
        f >> a[i];
        q.pop_front();
        q.push_back(i);
        for (int j = q.front(); j <= q.back(); ++j)
            if (a[j] < val_min) val_min = a[j];
        s_val_min += val_min;
        val_min = VMAX;
    }
    g << s_val_min;
    return 0;
}