Cod sursa(job #2732487)
| Utilizator | Data | 28 martie 2021 23:25:37 | |
|---|---|---|---|
| Problema | Deque | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.47 kb |
#include <fstream>
using namespace std;
ifstream in("deque.in");
ofstream out("deque.out");
int n, k;
int a[5000001], b[5000001];
int s, d;
long long r;
int main(){
int i;
in>>n>>k;
for(i=1;i<=n;i++){
in>>a[i];
}
s=1;d=0;
for(i=1;i<=n;i++){
while(s<=d && a[i]<=a[b[d]]){
d--;
}
b[++d]=i;
if(b[s]==i-k){
s++;
}
if(i>=k){
r+=a[b[s]];
}
}
out<<r;
return 0;
}
