Cod sursa(job #2578660)

Utilizator davalxdavid alex davalx Data 11 martie 2020 13:30:27
Problema Deque Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include <fstream>

using namespace std;

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

const int VM = 5e6;
int v [VM + 1], de [VM + 1];

int main() {
  int n, k, st, dr;
  long long s;
  in >> n >> k;
  st = 1; dr = s = 0;
  for (int i = 1; i <= n; i ++) {
    in >> v [i];
    if (st <= dr &&  de [st] == i - k)
        st ++;
    while (st <= dr && v [i] <= v [de [dr]])
        dr --;
    de [++ dr] = i;
    if (i >= k)
        s += v [de [st]];
  }
  out << s;
  return 0;
}