Pagini recente » Cod sursa (job #339645) | Cod sursa (job #1375396) | Cod sursa (job #2321248) | Cod sursa (job #1915574) | Cod sursa (job #1972779)
#include <fstream>
#include <deque>
#include <climits>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
deque<int>c;
int n,i,K,s,v[5000001],minim=INT_MAX;
int main()
{
f>>n>>K;
for(i=1;i<=n;i++)
f>>v[i];
for(i=1;i<=K;i++)
{
c.push_back(v[i]);
if(v[i]<minim)minim=v[i];
}
s+=minim;
for(i=K+1;i<=n;i++)
{
while(c.size()>=K){c.pop_front();}
while(!c.empty()&&c.front()>=v[i])c.pop_front();
c.push_back(v[i]);
s+=c.front();
}
g<<s;
return 0;
}