Pagini recente » Cod sursa (job #2385072) | Cod sursa (job #1032591) | Cod sursa (job #1434821) | Cod sursa (job #1260325) | Cod sursa (job #469851)
Cod sursa(job #469851)
#include <fstream>
#include <deque>
#include <utility>
#include <algorithm>
using namespace std;
deque < pair < int, int > > dq;
int n, k;
int main()
{
int i, x;
long long s = 0;
ifstream f ( "deque.in" );
ofstream g ( "deque.out" );
f >> n >> k;
for ( i = 0; i < n; ++ i ){
f >> x;
while ( ! dq . empty () && dq . back () . first > x )
dq . pop_back ();
dq . push_back ( make_pair ( x, i ) );
if ( dq . front () . second == i - k )
dq . pop_front ();
if ( i >= k - 1 )
s += dq . front () . first;
}
g << s << '\n';
f . close ();
g . close ();
return 0;
}