Pagini recente » Cod sursa (job #1178547) | Cod sursa (job #2655770) | Cod sursa (job #2084612) | Cod sursa (job #2432313) | Cod sursa (job #3239382)
#include <fstream>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int N,K,i,j,A[5000002],DEQUE[5000002],st,dr,vmin;
long long s;
int main()
{
fin>>N>>K;
for(i=1; i<=N; i++)
{
fin>>A[i];
}
s=0;
st=1;
dr=0;
for(i=1; i<=N; i++)
{
while(st<=dr && A[i]<=A[DEQUE[dr]])
{
dr--;
}
dr++;
DEQUE[dr]=i;
if(DEQUE[st]==i-K)
{
st++;
}
if(i>=K)
{
s+=A[DEQUE[st]];
}
}
fout<< s;
return 0;
}