Pagini recente » Diferente pentru problema/switch intre reviziile 10 si 8 | Cod sursa (job #338092) | Cod sursa (job #1668057) | Cod sursa (job #334534) | Cod sursa (job #869964)
Cod sursa(job #869964)
#include<fstream>
using namespace std;
int n,a[5000005],Q[5000005],i,head=1,tail=0,k;
long long int s=0;
main(){
ifstream f("deque.in");
ofstream g("deque.out");
f>>n>>k;
for(i=1;i<=n;++i){
f>>a[i];
if(Q[head]==i-k) head++;
while(head<=tail&&a[i]<=a[Q[tail]]) tail--;
Q[++tail]=i;
if(i>=k) s+=a[Q[head]];}
g<<s;
}