Pagini recente » Cod sursa (job #2141556) | Monitorul de evaluare | Statistici Andon Tepavicharov (DonchoBonboncho) | Monitorul de evaluare | Cod sursa (job #672564)
Cod sursa(job #672564)
#include<stdio.h>
int n,m,k,i,j;
long long s;
struct dque
{
int x,y;
};
dque q[5000001];
int b[5000001];
void deque()
{
int i,min,u=0,p=1;
for(i=1;i<=n;i++)
{
if(b[i]>q[u].x)
{
q[++u].x=b[i];
q[u].y=i;
}
else
{
while(b[i]<=q[u].x&&u>=1)
{
q[u].x=0;
q[u].y=0;
u--;
}
q[++u].x=b[i];
q[u].y=i;
}
if(q[u].y-q[p].y>=k)
p++;
min=q[p].x;
if(i>=k)
s+=min;
}
}
int main()
{
freopen("deque.in","r",stdin);
freopen("deque.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;i++)
scanf("%d",&b[i]);
deque();
printf("%lld\n",s);
return 0;
}