Cod sursa(job #3128094)

Utilizator BranckhiusIon Dragos-Constantin Branckhius Data 8 mai 2023 16:59:17
Problema Deque Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>
using namespace std;
int v[5000001], temp[5000000];
int main() {
    ifstream f("deque.in");
    ofstream g("deque.out");
    int n, k, st = 0, dr = 0;
    f >> n >> k;
    float suma = 0;
    for (int i = 0; i < n; i++)
        f >> v[i];
    for (int i = 0; i < n; i++) {
        while (st <= dr && v[i] <= v[temp[dr]]) {
            --dr;
        }
        ++dr;
        temp[dr] = i;

        if (k - i < 1 - temp[st]) {
            ++st;
        }
        if (i >= k - 1) {
            suma = suma + v[temp[st]];
        }
    }
    g << suma;
    f.close();
    g.close();
    return 0;
}