Cod sursa(job #3122447)
Utilizator | Data | 19 aprilie 2023 09:10:50 | |
---|---|---|---|
Problema | Deque | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.4 kb |
#include<bits/stdc++.h>
using namespace std;
ifstream F("deque.in");
ofstream G("deque.out");
int n,k,i,a[5000001];
deque<int> q;
long long s;
int main()
{
for(F>>n>>k,i=1;i<=n;++i) {
for(F>>a[i];!q.empty()&&a[i]<=a[q.back()];q.pop_back());
if(q.push_back(i),i-k>=q.front())
q.pop_front();
if(i>=k)
s+=a[q.front()];
}
return G<<s,0;
}