Pagini recente » Cod sursa (job #1263901) | Cod sursa (job #44389) | Cod sursa (job #79125) | Cod sursa (job #1327381) | Cod sursa (job #2971968)
#include <fstream>
#include <deque>
#define dim 5000005
using namespace std;
ifstream in ("deque.in");
ofstream out("deque.out");
int v[dim], q[dim], n, k;
void deck()
{
int st = 1, dr = 0;
long long sol = 0;
for (int i = 1; i <= n; i++) {
while(st <= dr && v[i] <= v[q[dr]])
dr--;
q[++dr] = i;
if (q[st] == i - k)
st++;
if (i >= k)
sol += v[q[st]];
}
out << sol;
}
int main()
{
in >> n >> k;
for (int i = 1; i <= n; i++)
in >> v[i];
deck();
return 0;
}