Cod sursa(job #1101441)

Utilizator laurageorgescuLaura Georgescu laurageorgescu Data 8 februarie 2014 14:54:13
Problema Deque Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<fstream>
#include<deque>

using namespace std;

ifstream fin( "deque.in" );
ofstream fout( "deque.out" );

int v[100];
deque <int> d;

int main()
{
    int aux, n, k;
    long long sol;
    fin>>n>>k;
    sol = 0;
    for( int i = 0; i < n; ++ i ) {
        fin>>v[i];
        while( !d.empty() && v[i] < v[d.back()] )
            d.pop_back();
        d.push_back( i );
        if ( d.front() <= i - k )
            d.pop_front();
        if ( i > k - 2 )
            sol += v[ d.front() ];
    }
    fout<<sol<<'\n';
    fin.close();
    fout.close();
    return 0;
}