Pagini recente » Cod sursa (job #1773628) | Cod sursa (job #717213) | Cod sursa (job #2413779) | Cod sursa (job #966521) | Cod sursa (job #3127028)
#include <bits/stdc++.h>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int st,dr,nr,k;
long long rez;
int main()
{ dr = -1;
f>>nr>>k;
vector<int> a(nr);
vector<int> pozitie(nr);
for(int i=0; i<nr; ++i)
{ f>>a[i];
while(st<=dr && a[i] <= a[pozitie[dr]])
dr = dr-1;
dr = dr + 1;
pozitie[dr] = i;
if(pozitie[st] == pozitie[dr]-k)
st = st+1;
if(pozitie[dr]+1 >= k)
rez = rez + a[pozitie[st]];
}
g<<rez;
f.close(); g.close();
return 0;
}