Cod sursa(job #2263244)

Utilizator isav_costinVlad Costin Andrei isav_costin Data 18 octombrie 2018 15:06:44
Problema Deque Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <cstdio>
#include <deque>

using namespace std;

deque<int>v;
int s[5000005];

int main()
{
  freopen( "deque.in", "r", stdin );
  freopen( "deque.out", "w", stdout );

  int n, m;

  scanf( "%d%d", &n, &m );

  for( int i=1;i<m;i++ )
  {
    scanf( "%d", &s[i] );

    v.push_back(s[i]);
  }

  long long sum=0;

  for( int i=m;i<=n;i++ )
  {
    scanf( "%d", &s[i] );

    while( !v.empty() && s[i]<v.back() )
      v.pop_back();

    v.push_back(s[i]);

    sum+=v.front();

    if( s[i-m+1]==v.front() )
      v.pop_front();
  }

  printf( "%lld", sum );

  return 0;
}