Cod sursa(job #2888932)
| Utilizator | Data | 11 aprilie 2022 23:04:56 | |
|---|---|---|---|
| Problema | Deque | Scor | 60 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include <iostream>
#include <fstream>
#include <deque>
using namespace std;
std::ifstream f("deque.in");
std::ofstream g("deque.out");
long long n, k, v[5000000], max1=5000000, d[5000000], a=1, b=0, s=0;
int main()
{
long long i;
f >> n >> k;
for(i=1; i<=n; i++)
f >> v[i];
for(i=1; i<=n; i++)
{
while(a<=b && v[i] <= v[d[b]])
b--;
b++;
d[b] = i;
if(d[a] == i-k)
a++;
if(i>=k)
s += v[d[a]];
}
g<<s;
}
