Cod sursa(job #3127741)
Utilizator | Data | 7 mai 2023 19:31:40 | |
---|---|---|---|
Problema | Deque | Scor | 85 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.45 kb |
#include <fstream>
int main() {
std::ifstream fin("deque.in");
std::ofstream fout("deque.out");
int n, k;
long long s = 0;
int* v = new int[5000000] {0};
int vb = 0, ve = 0;
fin >> n >> k;
int cn = n;
while (cn--) {
int nr;
fin >> nr;
v[ve] = nr;
while (vb < ve and v[vb] >= v[ve] or ve - vb >= k) {
++vb;
}
if (n - cn >= k) {
s += v[vb];
}
++ve;
}
fout << s << "\n";
delete[] v;
return 0;
}