Pagini recente » Cod sursa (job #1828450) | Cod sursa (job #969416) | Cod sursa (job #2293587) | Cod sursa (job #700964) | Cod sursa (job #1379429)
#include <fstream>
#define NMax 5000010
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n, k, mdeque[NMax], fi, la, ap;
long long sumMin, v[NMax];
int main()
{
f >> n >> k;
for (int i = 1; i <= n; i++)
f >> v[i];
fi = 1;
la = 0;
v[0] = -2000000000;
for (int i = 1; i <= n; i++) {
while (v[mdeque[la]] > v[i])
la--;
mdeque[++la] = i;
while (i - ap > k) {
ap++;
if (ap == mdeque[fi])
fi++;
}
if (i - ap == k)
sumMin += v[mdeque[fi]];
}
g << sumMin;
}