Cod sursa(job #3331194)

Utilizator AndreiRaresAcatrini Rares Andrei AndreiRares Data 25 decembrie 2025 18:16:06
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <string>       
#include <unordered_map>    
#include <stack>    
#include <utility>    
#include <vector>
#include <deque>
using namespace std;

#ifdef LOCAL
#define fin cin
#define fout cout
#else
ifstream fin("deque.in");
ofstream fout("deque.out");
#endif

deque<pair<int, int>> d;

int main() {
	int n, k, a, s=0;
	fin >> n >> k;
	for (int i=1; i<=n; i++) {
		fin >> a;
		while (!d.empty() && a < d.back().second) d.pop_back();
		if (i > k && !d.empty() && d.front().first <= i - k) d.pop_front();
		d.push_back({i, a});
		if (i >= k) s += d.front().second;
	}
	fout << s;
}