Pagini recente » Cod sursa (job #67676) | Cod sursa (job #3291578) | Cod sursa (job #1468203) | Cod sursa (job #3238907)
#include <bits/stdc++.h>
#define MAXN 5000000
using namespace std;
int v[MAXN + 1];
int main() {
ifstream cin( "deque.in" );
ofstream cout( "deque.out" );
int n , k , i;
long long ans;
deque< int >deq;
cin >> n >> k;
for( i = 0 ; i < k ; i++ ) {
cin >> v[i];
while( !deq.empty() && v[i] <= v[deq.back()] )
deq.pop_back();
deq.push_back( i );
}
ans = v[deq.front()];
for( ; i < n ; i++ ) {
cin >> v[i];
while( !deq.empty() && v[i] <= v[deq.back()] )
deq.pop_back();
deq.push_back( i );
if( deq.front() <= i - k )
deq.pop_front();
ans += 1LL * v[deq.front()];
}
cout << ans << '\n';
return 0;
}