Pagini recente » Cod sursa (job #478242) | Cod sursa (job #787410) | Cod sursa (job #996132) | Cod sursa (job #967344) | Cod sursa (job #2888348)
#include <fstream>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int poz[5000001], v[5000001];
int n, k,st,dr;
long long s;
int main()
{
s=0;
fin>>n>>k;
for(int i = 1; i <= n; i++)
fin>>v[i];
st=1;
dr=0;
for(int i = 1; i <= n; i++) {
while(st<=dr && v[i] <= v[poz[dr]])
{
dr--;
}
dr++;
poz[dr]=i;
if(i >= k) {
s += v[poz[st]];
if(poz[st] == i - k + 1) {
st++;
}
}
}
fout<<s;
return 0;
}