Pagini recente » Atasamentele paginii Profil arco | Cod sursa (job #2916386) | algoritmiada_2010_runda_1_clasele_9-10 | Arc | Cod sursa (job #2743730)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int v[5000005],poz[5000005],x[5000005];
long long n,m,i,j,k,maxim,s,sum,p,u;
int main(){
fin>>n>>k;
for(i=1;i<=n;i++)
fin>>v[i];
p=1;
u=1;
x[1]=v[1];
poz[1]=1;
for(i=2;i<=n;i++){
if(i-poz[p]+1>k)
p++;
u++;
x[u]=v[i];
poz[u]=i;
while(x[u]<=x[u-1]&&u>p){
x[u-1]=x[u];
poz[u-1]=poz[u];
u--;
}
if(i>=k)
sum+=x[p];
}
fout<<sum;
return 0;
}