Pagini recente » Cod sursa (job #186864) | Cod sursa (job #1821386) | Cod sursa (job #15153) | Cod sursa (job #2107705) | Cod sursa (job #2044243)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
deque<int>q;
queue<int>c;
void Push(int x)
{
c.push(x);
while(!q.empty()&&q.back()>x)
q.pop_back();
q.push_back(x);
}
void Pop()
{
int x=c.front();
if(x==q.front()) q.pop_front();
c.pop();
}
int main()
{
int n,k,x,i;
long long s=0;
fin>>n>>k;
for(i=1;i<=k;i++)
{
fin>>x;
Push(x);
}
for(i=i;i<=n;i++)
{
fin>>x;
s+=q.front();
Push(x);
Pop();
}
s+=q.front();
fout<<s<<"\n";
return 0;
}