Pagini recente » Cod sursa (job #879132) | Cod sursa (job #3176296) | Cod sursa (job #1850231) | Cod sursa (job #983915) | Cod sursa (job #1503252)
#include <fstream>
#include <deque>
#include <iostream>
using namespace std;
ifstream in("deque.in");
ofstream out("deque.out");
//int vec[5000000];
int main()
{
deque<int> a,b;
int i,n,k,x;
long long int s=0;
in>>n;
in>>k;
//for(i=0;i<n;i++) in>>vec[i];
in>>x;
a.push_back(x);
b.push_back(0);
for(i=1;i<k;i++)
{
in>>x;
while(x < a[a.size()-1])
{
a.pop_back();
b.pop_back();
}
a.push_back(x);
b.push_back(i);
}
s+=a[0];
for(i=k;i<n;i++)
{
in>>x;
while(x < a[a.size()-1])
{
a.pop_back();
b.pop_back();
}
a.push_back(x);
b.push_back(i);
if(b[a.size()-1]-b[0]+1>k)
{
a.pop_front();
b.pop_front();
}
s+=a[0];
}
out<<s;
in.close();
out.close();
return 0;
}