Pagini recente » Cod sursa (job #2310558) | Cod sursa (job #2176718) | Cod sursa (job #2468867) | Cod sursa (job #1166702) | Cod sursa (job #2699352)
/*
* Created by Andrei Arhire 24/01/2021
* Copyright © 2021 Andrei Arhire. All rights reserved.
* Expected verdict - Accepted
*/
#include <bits/stdc++.h>
#include <deque>
#define pb push_back
#define eb emplace_back
#define mp make_pair
using namespace std;
const long long NR = 5e6 + 1e3 ;
const long long oo = 1e9 + 100 ;
const long long MOD = 1e9 + 7 ;
const long long MOD2 = 1e9 + 9 ;
long long n , k ;
deque < long long > dq ;
int a [ NR ] ;
long long sum ;
ifstream in ("deque.in") ;
ofstream out ("deque.out") ;
signed main () {
ios::sync_with_stdio(0) ;
in.tie(0);
long long i ;
in >> n >> k ;
for ( i = 1 ; i <= n ; ++ i ) {
in >> a [ i ] ;
while ( !dq.empty() && a [ dq.back() ] >= a [ i ] ) {
dq.pop_back() ;
}
dq.pb( i ) ;
if ( i - dq.front() == k )
dq.pop_front() ;
if ( i >= k ) {
sum += a [ dq.front() ] ;
}
}
out << sum << '\n' ;
return 0 ;
}