Pagini recente » Cod sursa (job #1303228) | Cod sursa (job #1148585) | Cod sursa (job #2608973) | Cod sursa (job #137122) | Cod sursa (job #2727916)
// Podaru Eduard-Cristian
#include <iostream>
#include <fstream>
using namespace std;
ifstream inputFile("deque.in");
ofstream outputFile("deque.out");
long long suma;
int n, k, st, dr;
int a[5000000];
int d[5000000];
int main() {
int i;
inputFile>>n>>k;
st = 1;
dr = 0;
suma = 0;
for( i = 0; i < n ; ++i) {
inputFile>>a[i];
}
for(i = 0; i < n; ++i) {
while( st <= dr && a[i] <= a[d[dr]] ) {
--dr;
}
++dr;
d[dr] = i;
if( i >= k) {
if (d[st] <= i - k) {
++st;
}
suma += a[d[st]];
}
}
outputFile << suma;
return 0;
}