Pagini recente » Cod sursa (job #306759) | Cod sursa (job #1272217) | Cod sursa (job #3212745) | Cod sursa (job #2490320) | Cod sursa (job #584704)
Cod sursa(job #584704)
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int a[5000001],n,i,deque[5000001],start,final,k;
long long s;
int main () {
f >> n >> k;
for (i=1;i<=n;i++)
f >> a[i];
start=1;final=0;
for (i=1;i<=n;i++) {
while (start<=final && a[i]<=a[deque[final]]) final--;
final++;deque[final]=i;
if (deque[start]==i-k) start++;
if (i>=k) s+=a[deque[start]];
}
g << s << '\n';
f.close();g.close();
return 0;
}