Pagini recente » Cod sursa (job #196193) | Cod sursa (job #188484) | Cod sursa (job #1907152) | Cod sursa (job #1530811) | Cod sursa (job #437321)
Cod sursa(job #437321)
/*
* File: main.cpp
* Author: VirtualDemon
*
* Created on April 9, 2010, 4:23 PM
*/
#include <deque>
#include <cstdlib>
#include <fstream>
#define Nmax 5000000
/*
*
*/
using namespace std;
int v[Nmax];
deque< int > DQ;
int main(int argc, char** argv)
{
int N, K, i;
long long int s=0;
ifstream in( "deque.in" );
in>>N>>K;
for( s=i=0; i < N; ++i )
{
in>>v[i];
for( ; !DQ.empty() && v[i] <= v[DQ.back()]; DQ.pop_back() );
DQ.push_back(i);
if( i >= K-1 )
s+=v[ DQ.front() ];
if( DQ.front() == i-K+1 )
DQ.pop_front();
}
ofstream out( "deque.out" );
out<<s<<'\n';
return EXIT_SUCCESS;
}