Pagini recente » Cod sursa (job #2182951) | Cod sursa (job #1596609) | Cod sursa (job #2400625) | Cod sursa (job #174703) | Cod sursa (job #390284)
Cod sursa(job #390284)
#include<fstream.h>
#define max 5000001
long a[max],n,k,in,sf,deque[max];
long 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;
}