Pagini recente » Cod sursa (job #1151190) | Cod sursa (job #2471026) | Cod sursa (job #2775967) | Cod sursa (job #662562) | Cod sursa (job #2538031)
#include <fstream>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
const int N=5000001;
long long v[N],a[N],ans,n,k,dq[N],st,dr;
int main()
{
fin>>n>>k;
for(int i=1;i<=n;i++)
{
fin>>v[i];
a[i]=v[i]+a[i-1];
}
st=1;
dr=0;
for(int i=1;i<=n;i++)
{
if(i-k==dq[st])
{
st++;
}
while(st<=dr&&v[i]<=v[dq[dr]])
{
dr--;
}
dq[++dr]=i;
if(i>=k)
{
ans+=v[dq[st]];
}
}
fout<<ans;
return 0;
}