Cod sursa(job #3172388)

Utilizator dobreraduDobre Radu Fabian dobreradu Data 20 noiembrie 2023 16:12:40
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <bits/stdc++.h>

using namespace std;
ifstream in("deque.in");
ofstream out("deque.out");
const int NMAX = 5000000;
int v[NMAX+1];
deque <int> q;
int main()
{

    int n, k;
    in >> n >> k;
    long long rez = 0;
    for( int i = 0 ; i < n ; i++ )
        in >> v[i];

    for( int i = 0; i < n; i++ ){
        if( q.size() && q.front() <= i - k )
            q.pop_front();
        while( !q.empty() && v[i] <= v[q.back()] )
            q.pop_back();
        q.push_back(i);
        if( i >= k-1 )
            rez += v[q.front()];
    }
    out << rez << "\n";
    return 0;
}