Pagini recente » Cod sursa (job #21393) | Cod sursa (job #2942791) | Cod sursa (job #345444) | Cod sursa (job #2317750) | Cod sursa (job #2261097)
#include<bits/stdc++.h>
using namespace std ;
ifstream f( "deque.in" ) ;
ofstream g ("deque.out") ;
int dq[ 5000001 ], v[ 5000001 ] ;
int main()
{
int n , k , dr , st , i , x ;
long long sum = 0 ;
f>>n>>k ;
for ( i = 1 ; i <= n ; i++ ){
f>>v[i] ;
}
dr = 0 ;
st = 1 ;
for ( i = 1 ; i <= n ; i++ ){
x = v [ i ] ;
while ( st <= dr && x <= v [ dq [ dr ] ] ) dr-- ;
dr++ ;
dq [ dr ] = i ;
if ( i - dq [ st ] == k ) {
st++ ;
}
if ( i >= k ) sum = sum + v [ dq [ st ] ] ;
}
g<<sum ;
}