Pagini recente » Cod sursa (job #617360) | Cod sursa (job #2707922) | Cod sursa (job #2101111) | Cod sursa (job #2109716) | Cod sursa (job #2033659)
#include <bits/stdc++.h>
using namespace std;
int a[5000003];
int main()
{
int n,k,i,x;
int64_t s=0;
ifstream f("deque.in");
f>>n>>k;
for(i=1; i<=n; i++)
f>>a[i];
deque<int>q;
for(i=1; i<=k; i++)
{
x=a[i];
while(!q.empty() && x<= a[q.back()])
q.pop_back();
q.push_back(i);
}
s+=a[q.front()];
for(i=k+1; i<=n; i++)
{
x=a[i];
while(!q.empty() && x<= a[q.back()])
q.pop_back();
q.push_back(i);
if(i-q.front() >= k)
q.pop_front();
s+=a[q.front()];
}
f.close();
ofstream g("deque.out");
g<<s;
g.close();
return 0;
}