Cod sursa(job #3330427)

Utilizator Vicentiu123Savu Vicentiu Dorian Vicentiu123 Data 19 decembrie 2025 15:21:20
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <iostream>
#include <deque>
#include <fstream>
using namespace std;
struct deq{
    int val, poz;
} a[5000001];
int main()
{
    ifstream fin("deque.in");
    ofstream fout("deque.out");
    int n, k, i, st, dr;
    long long s=0;
    fin>>n>>k;
    dr=-1;
    st=0;
    for(i=0;i<n;i++){
        dr++;
        fin>>a[dr].val;
        a[dr].poz=i;
        while(dr>st&&a[dr].val<=a[dr-1].val){
            dr--;
            a[dr].val=a[dr+1].val;
            a[dr].poz=a[dr+1].poz;
        }
        if(i-a[st].poz>=k){
            st++;
        }
        if(i>=k-1){
            s+=a[st].val;
           // cout<<i<<' '<<a[st].poz<<' '<<a[st].val<<'\n';
        }
    }
    fout<<s;
    return 0;
}