Pagini recente » Cod sursa (job #754679) | Cod sursa (job #3210866) | Cod sursa (job #1434162) | Cod sursa (job #3128252) | Cod sursa (job #3211215)
#include <fstream>
#include <deque>
#include <vector>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
struct z
{
int poz,val;
};
deque <z> D;
int main()
{
int n,k,sum=0,x,m=1;
f>>n>>k;
for(int i=1;i<=n;i++)
{
f>>x;
if(!D.empty())
{
if(D.front().poz<i-k)
{
sum+=D.front().val;
D.pop_front();
m++;
}
while(!D.empty()&&x<D.back().val)
{
D.pop_back();
}
}
D.push_back(x);
D.push_back(i).poz;
}
g<<sum;
return 0;
}