Nu aveti permisiuni pentru a descarca fisierul grader_test19.in
Cod sursa(job #2870946)
Utilizator | Data | 12 martie 2022 18:48:17 | |
---|---|---|---|
Problema | Deque | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.68 kb |
#include <bits/stdc++.h>
#pragma GCC optimize ("Ofast")
using namespace std;
ifstream fin ("deque.in");
ofstream fout ("deque.out");
const int MAX_N = 5000005;
deque <int> minn;
int n, k, v[MAX_N];
long long sol;
int main (){
ios_base::sync_with_stdio(false);
fin.tie(nullptr);
fout.tie(nullptr);
fin>>n>>k;
for(int i=1; i<=n; i++){
fin>>v[i];
while(!minn.empty() && v[i] <= v[minn.back()])
minn.pop_back();
minn.push_back(i);
if(i >= k){
sol += v[minn.front()];
if(minn.front() == i-k+1)
minn.pop_front();
}
}
fout<<sol;
return 0;
}