Cod sursa(job #633978)

Utilizator sternvladStern Vlad sternvlad Data 15 noiembrie 2011 11:16:15
Problema Deque Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb

#include <iostream>
#include <deque>
#include <fstream>


using namespace std;


deque <int> Deque,index;
int n,k;


int main()
{int i,val;
long long sum=0;
    ifstream f ("deque.in");
f>>n>>k;
for (i=1;i<=n;i++)
{   f>>val;
    while (!Deque.empty() && val<=Deque.back())
    {Deque.pop_back();
    index.pop_back();
}
Deque.push_back (val);
index.push_back (i);

if (index.front()==i-k)
{Deque.pop_front ();
index.pop_front();
}
if (i>=k) sum=sum+Deque.front ();
}
ofstream g ("deque.out");
g<<sum;
cout<<sum;
    return 0;
}