Pagini recente » Cod sursa (job #2954846) | Cod sursa (job #1304566) | Cod sursa (job #2293764) | Cod sursa (job #134047) | Cod sursa (job #2562952)
#include <bits/stdc++.h>
using namespace std;
/**********************************************/
deque <pair <int,int> >dq;
int n,k;
long long sum;
/**********************************************/
ifstream f("deque.in");
ofstream g("deque.out");
/**********************************************/
///--------------------------------------------------------
inline void readInput()
{
f>>n>>k;
}
///--------------------------------------------------------
///--------------------------------------------------------
inline void Solution()
{
int val;
for(int i=1;i<=k;i++)
{
f>>val;
while(!dq.empty() && dq.back().first>=val) dq.pop_back();
dq.push_back({val,i});
}
sum=dq.front().first;
for(int i=k+1;i<=n;i++)
{
f>>val;
while(!dq.empty() && dq.back().first>=val) dq.pop_back();
dq.push_back({val,i});
if(dq.front().second<=i-k) dq.pop_front();
sum+=dq.front().first;
}
}
///--------------------------------------------------------
inline void Afisare()
{
g<<sum;
}
///--------------------------------------------------------
int main()
{
readInput();
Solution();
Afisare();
return 0;
}