Pagini recente » Cod sursa (job #1931165) | Cod sursa (job #708788) | Cod sursa (job #2690311) | Cod sursa (job #1088644) | Cod sursa (job #2889468)
#include <bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g"deque.out");
const int maxx.dim=5000005;
int v[maxx.dim];
int main()
{
int n, k;
long long sum=0;
deque<int>mini, minipos;
f>>n>>k;
for(int i=1; i<=n; i++)
{
f>>v[i];
}
for(int i=1; i<=n+1; i++)
{
while(!mini.empty() and mini.back()>v[i])
{
mini.pop_back();
minipos.pop_back();
}
if(i>k)
{
sum=sum+mini.front();
}
if(!mini.empty() and i-k>=minipos.front())
{
minipos.pop_front();
mini.pop_front();
}
mini.push_back(v[i]);
minipos.push_back(i);
}
g<<sum;
return 0;
}