Pagini recente » Cod sursa (job #1043336) | Cod sursa (job #1730277) | Cod sursa (job #1743324) | Cod sursa (job #1188382) | Cod sursa (job #2274337)
#include <iostream>
#include <fstream>
using namespace std;
int dq[5000005];
int main()
{
ifstream in ("deque.in");
ofstream out("deque.out");
int n,k;
in>>n>>k;
long long v[n+5];
for (int i=0;i<n;i++)
{
in>>v[i];
}
int st=0,dr=-1;
long long s=0;
for (int i=0;i<n;i++)
{
if (i>=k && dq[st]==i-k)
st++;
while(st<=dr && v[i]<=v[dq[dr]])
{
dr--;
}
dq[++dr]=i;
if (i>=k-1) s+=v[dq[st]];
}
out<<s;
in.close();
out.close();
return 0;
}