Pagini recente » Cod sursa (job #2327727) | Cod sursa (job #866001) | Cod sursa (job #1870292) | Cod sursa (job #954561) | Cod sursa (job #2731112)
#include <bits/stdc++.h>
using namespace std;
ifstream in("deque.in");
ofstream out("deque.out");
using namespace std;
int v[5000000], c[5000000], stanga = 1, dreapta, n, k;
long s;
int main()
{
in >> n >> k;
for(int i=1;i<=n;i++)
{
in >> v[i];
}
for(int i=1;i<=n;i++)
{
while(stanga <= dreapta && v[i] <= v[c[dreapta]])
{
dreapta--;
}
c[++dreapta] = i;
if(c[stanga] == i-k)
{
stanga++;
}
if(i >= k)
{
s += v[c[stanga]];
}
}
out<<s;
in.close();
out.close();
return 0;
}