Cod sursa(job #2798975)

Utilizator bianca_maria06Bianca Ciobanu bianca_maria06 Data 12 noiembrie 2021 10:06:04
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <fstream>
#include <deque>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int v[5000000];
deque<int>d;
int main()
{
    int n,k,i,s=0;
    fin>>n>>k;
    for(i=1;i<=n;i++){
      fin>>v[i];
    }
    for(i=1;i<=n;i++){
      if (!d.empty() && d.front() == i-k) {
        d.pop_front();
      }
      while (!d.empty() && v[d.back()] >= v[i]) {
        d.pop_back();
      }
      d.push_back(i);
      if (i >= k) {
        s += v[d.front()];
      }
    }
    fout<<s;
    fin.close();
    fout.close();
    return 0;
}