Cod sursa(job #2394317)

Utilizator Andy_ANDYSlatinaru Andrei Alexandru Andy_ANDY Data 1 aprilie 2019 15:42:46
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ifstream f ( "deque.in" ); ofstream g ( "deque.out" );
int v[5000006];
int main()
{   long long n,k,sol=0;
    deque <int>d;
    f>>n>>k;
    for(int i = 1 ; i <= n ; i++) f>>v[i];
    for(int i = 1 ; i <= n ; i++)
    {   while( !d.empty() and  v[i]<v[d.back()] ) d.pop_back();
        if( !d.empty() and d.front()==i-k  ) d.pop_front();
        d.push_back(i);
        if(i>=k) sol+=v[d.front()];
    }
    g<<sol;
    return 0;
}