Pagini recente » Cod sursa (job #100177) | Cod sursa (job #1324996) | Cod sursa (job #2658190) | Cod sursa (job #1657723) | Cod sursa (job #3164605)
#include <bits/stdc++.h>
#define MAX_N 5000001
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
struct que{
int index;
long long value;
};
int n,k;long long x,s;
deque<que> dq_minim;
bool flag=true;
int main()
{
fin>>n>>k;
for(int i = 1 ; i <= n; i++){
fin>>x;
while(!dq_minim.empty() && dq_minim.back().value > x)
dq_minim.pop_back();
dq_minim.push_back({i,x});
while(!dq_minim.empty() && dq_minim.front().index + k == i)
dq_minim.pop_front();
if(i >= k && i <= n){
s+=dq_minim.front().value;
cout<<dq_minim.front().value<<' ';
}
}
fout<<s;
return 0;
}