Pagini recente » Cod sursa (job #870858) | Cod sursa (job #1998856) | Cod sursa (job #2854753) | Cod sursa (job #1353325) | Cod sursa (job #451218)
Cod sursa(job #451218)
/*
* File: main.cpp
* Author: virtualdemon
*
* Created on May 9, 2010, 11:43 AM
*/
#include <deque>
#include <cstdlib>
#include <fstream>
#define Nmax 5000011
/*
*
*/
using namespace std;
int v[Nmax];
deque< int > dQ;
int main(int argc, char** argv)
{
int i, N, k;
long long int s;
ifstream in( "deque.in" );
in>>N>>k;
for( i=1, s=0; i <= N; ++i )
{
in>>v[i];
for( ; !dQ.empty() && v[dQ.back()] >= v[i]; dQ.pop_back() );
dQ.push_back(i);
if( i >= k )
s+=v[dQ.front()];
if( i-dQ.front()+1 >= k )
dQ.pop_front();
}
ofstream out( "deque.out" );
out<<s<<'\n';
return (EXIT_SUCCESS);
}