Pagini recente » Cod sursa (job #3179460) | Cod sursa (job #1916294) | Cod sursa (job #2489027) | Cod sursa (job #739357) | Cod sursa (job #2889374)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
long long n,d[5000002],v[5000002],k,i,front,back=1,j,nr,sum;
int main() {
f>>n>>k;
for(i=1;i<=n;i++)
{
f>>nr;
while(front!=0 && v[back]+k<=i)
{
for(j=2;j<=front;j++)
{
d[j-1]=d[j];
v[j-1]=v[j];
}
front--;
}
while(front!=0 && d[back]>nr)
{
for(j=2;j<=front;j++)
{
d[j-1]=d[j];
v[j-1]=v[j];
}
front--;
}
front++;
d[front]=nr;
v[front]=i;
if(i>=k){
sum += d[back];
cout<<d[back];
}
}
g<<sum;
return 0;
}