Pagini recente » Cod sursa (job #235885) | Cod sursa (job #2514406) | Cod sursa (job #2987270) | Cod sursa (job #1116392) | Cod sursa (job #2333588)
#include <bits/stdc++.h>
using namespace std;
const int NR = 100001 ;
ifstream in ("deque.in") ;
ofstream out ("deque.out") ;
int n , k , v [ 5000001 ] ;
int64_t sum ;
int main ()
{
in >> n >> k ;
deque < int > dq ;
for ( int i = 1 ; i <= n ; ++ i )
{
in >> v [ i ] ;
if ( !dq.empty() && dq.front() == i - k )
dq.pop_front() ;
while ( !dq.empty() && v [ dq.back() ] >= v [ i ] )
{
dq.pop_back() ;
if ( dq.empty() ) break ;
}
dq.push_back ( i ) ;
if ( i >= k ) sum += v [ dq.front() ] ;
}
out << sum ;
return 0 ;
}