Cod sursa(job #2614030)
Utilizator | Data | 11 mai 2020 01:23:06 | |
---|---|---|---|
Problema | Deque | Scor | 25 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
const int N=5000000;
int a[N],k,i,dq[N],s,n,st,dr;
int main()
{
f>>n>>k;
for(i=1;i<=n;i++)
f>>a[i];
st=1;dr=1;
dq[1]=1;
for(i=2;i<=n;i++)
{
while(st<=dr&&a[i]<=a[dq[dr]])
dr--;
dq[++dr]=i;
if(i-k==dq[st])
st++;
if(i>=k)
s+=a[dq[st]];
}
g<<s;
return 0;
}