Pagini recente » Cod sursa (job #3265033) | Cod sursa (job #2896273) | Cod sursa (job #31075) | Cod sursa (job #250) | Cod sursa (job #274266)
Cod sursa(job #274266)
#include<fstream.h>
# define max 5000007
ifstream fin("deque.in");
ofstream fout("deque.out");
long n,k,p,sf,a[max],d[max];
long long s;
int main()
{long i;
fin>>n>>k;
for(i=1;i<=n;i++)fin>>a[i];
p=sf=1;
for(i=1;i<=n;i++)
{
while(p<=sf&&a[i]<=a[d[sf]])sf--;
d[++sf]=i;
if(d[p]==i-k)p++;
if(i>=k) s+=a[d[p]];
}
fout<<s<<'\n';
fin.close();
fout.close();
return 0;
}