Pagini recente » Cod sursa (job #3359805) | Cod sursa (job #3361185) | Cod sursa (job #3361183) | Cod sursa (job #3361176) | Cod sursa (job #3361173)
#include <fstream>
#include <deque>
#define DIM 5000001
using namespace std;
ifstream fin ("deque.in");
ofstream fout ("deque.out");
int v[DIM];
deque<int> d;
int n, p, u, i, k;
long long suma = 0;
int main ()
{
fin>>n>>k;
for (i=1;i<=n;i++)
{
fin>>v[i];
}
d.push_back(1);
if (k == 1)
{
suma = v[1];
}
for (i=2;i<=n;i++)
{
while (!d.empty() && v[i] <= v[ d.back() ])
{
d.pop_back();
}
d.push_back(i);
if (i - d.front() == k)
{
d.pop_front();
}
if (i >= k)
{
suma += v[ d.front() ];
}
}
fout<<suma;
return 0;
}