Cod sursa(job #2291103)

Utilizator Dragomiralexandru621@yahoo.comDragomir ionut alexandru [email protected] Data 27 noiembrie 2018 16:22:04
Problema Deque Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");

int n , m , a[600000] , b[600000] ;

int main()
{
   f >> n >> m ;
   for( int i = 1 ; i <= n ; i ++ )
    f >> a[i] ;

    int sum = 0 , x = 0 , cursor2 = 0 , cursor1 = 1 ;

    for( int i = 1 ; i <= n ; i ++ )
    {
        while(cursor1 <= cursor2 && a[i] <= a[b[cursor2]] )
        cursor2 -- ;

        b[++ cursor2] = i ;

        if(b[cursor1] == i - m )
        cursor1 ++ ;

        if( i >= m )
        sum += a[b[cursor1]] ;

    }
       g << sum ;
}