Cod sursa(job #2727595)

Utilizator StefaniaCriStefania Cristea StefaniaCri Data 22 martie 2021 10:09:43
Problema Deque Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.56 kb
#include <iostream>
#include <fstream>
using namespace std;

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

struct ddeque{
  int val,poz;
};

int main(){
    int n,k;
    f>>n>>k;
    ddeque Deq[n];
    int fr=1,bk=0;
    long long sum=0;
    for(int i=1;i<=n;i++)
        f>>Deq[i].val;
    for(int i=1;i<=n;i++){
        while(fr<=bk&&Deq[i].val<=Deq[Deq[bk].poz].val)
            bk--;
        Deq[++bk].poz=i;
        if(Deq[fr].poz==i-k) fr++;
        if(i>=k)
            sum+=Deq[Deq[fr].poz].val;
    }
    g << sum ;
    return 0;
}