Pagini recente » Cod sursa (job #195039) | Cod sursa (job #2119144) | Cod sursa (job #310985) | Cod sursa (job #1357826) | Cod sursa (job #390283)
Cod sursa(job #390283)
#include<fstream.h>
#define max 5000001
long a[max],n,k,in,sf,deque[max];
long suma;
int main()
{
long i;
ifstream fin("deque.in");
fin>>n>>k;
for (i=1; i<=n; i++)
fin>>a[i];
in=1; sf=0;
for (i=1; i<=n; i++)
{
while (in<=sf && a[i]<=a[deque[sf]])
sf--;
sf++;
deque[sf]=i;
if (deque[in]==i-k)
in++;
if (i>=k)
suma=suma+a[deque[in]];
}
ofstream fout("deque.out");
fout<<suma;
fin.close();
fout.close();
return 0;
}