Pagini recente » Cod sursa (job #1702525) | Cod sursa (job #271134) | Cod sursa (job #280024) | Cod sursa (job #2698843) | Cod sursa (job #1495569)
#include <fstream>
using namespace std;
struct a{
int v, poz;
} v[5000000];
int n, k, q, st = -1, dr = 0;
long long r = 0;
int main(){
ifstream in("deque.in");
ofstream out("deque.out");
in >> n >> k >> v[0].v;
v[0].poz = 0;
for (int i = 1; i < n; i++){
in >> q;
while(st != dr && q <= v[dr].v)
dr--;
v[++dr].v = q;
v[dr].poz = i;
if (v[dr].poz - v[st + 1].poz >= k)
st++;
if(i + 1 >= k)
r += v[st + 1].v;
}
out << r;
return 0;
}