Pagini recente » Cod sursa (job #1454555) | Cod sursa (job #2876444) | Cod sursa (job #1924047) | Cod sursa (job #1143912) | Cod sursa (job #372394)
Cod sursa(job #372394)
#include<fstream>
#include<iostream>
using namespace std;
long i,n,a[5000002],s,d,k,c[5000002];
long long constantafolositapentrusuma;
int main()
{
ifstream f("deque.in");
ofstream g("deque.out");
f>>n>>k;
for(i=1;i<=n;i++)
f>>a[i];
s=1;d=1;
c[d]=1;
for(i=2;i<k;i++)
{
while(a[i]<=a[c[d]]&&d>=s)d--;
c[++d]=i;
}
for(i=k;i<=n;i++)
{
while(c[s]+k<=i)s++;
while(a[i]<=a[c[d]]&&d>=s)d--;
c[++d]=i;
constantafolositapentrusuma+=a[c[s]];
}
g<<constantafolositapentrusuma;
return 0;
}