Cod sursa(job #3369715)

Utilizator rradu45Radu Andrei Balas rradu45 Data 21 octombrie 2026 20:42:05
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <bits/stdc++.h>
using namespace std;
#define L 5000002
int deq[L],rasp[L];
int main(){
    ifstream cin ("deque.in");
    ofstream cout ("deque.out");
    int n,i,z,prim,ultim,k,minim;
    long long s;
    cin >> n >> k;
    prim=ultim=0;
    for(i=0;i<n;i++){
        if(i>=k){
            if((minim=deq[prim])==rasp[i-k])
                prim=(prim+1)%L;
            rasp[i-k]=minim;
        }
        cin >> z;
        rasp[i]=z;
        while(ultim!=prim&&deq[ultim-1]>z)
            ultim=(ultim-1+L)%L;
        deq[ultim]=z;
        ultim=(ultim+1)%L;
    }
    rasp[i-k]=deq[prim];
    s=0;
    for(i=0;i<=n-k;i++)
        s+=rasp[i];
    cout << s;
    return 0;
}