Pagini recente » Cod sursa (job #2310560) | Cod sursa (job #2235399) | Cod sursa (job #276930) | Cod sursa (job #2686646) | Cod sursa (job #372385)
Cod sursa(job #372385)
#include<fstream>
using namespace std;
long i,n,a[5000000],s,d,k,c[5000000];
long long sum;
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--;
c[++d]=i;
}
for(i=k;i<=n;i++)
{
while(c[s]+k<=i)s++;
if(d==s-1)
c[++d]=i;
else
while(a[i]<=a[c[d]]&&d>=s)d--;
c[++d]=i;
sum+=a[c[s]];
}
g<<sum;
return 0;
}