Pagini recente » lastproblem | Cod sursa (job #312856) | Cod sursa (job #2484025) | Diferente pentru home intre reviziile 687 si 688 | Cod sursa (job #778819)
Cod sursa(job #778819)
#include <fstream>
#include <algorithm>
#include <cmath>
#include <deque>
using namespace std;
deque <long long> v;
long long sum;
long long a[5000001],i,n,k;
int main()
{
ifstream f("deque.in");
ofstream g("deque.out");
f>>n>>k;
for (i=1; i<=n; i++) f>>a[i];
for (i=1; i<=n; i++){while (!v.empty() && a[v.back()]>=a[i]) v.pop_back();v.push_back(i);if (v.front()<=i-k) v.pop_front();if (i>=k) sum=sum+a[v.front()];}g<<sum;f.close();g.close();
return 0;
}