Cod sursa(job #2925654)
Utilizator | Data | 15 octombrie 2022 20:40:16 | |
---|---|---|---|
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");
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[q.back()]>=a[i];q.pop_back());
if(q.push_back(i),i-q.front()==k)
q.pop_front();
if(i>=k)
s+=a[q.front()];
}
return ofstream("deque.out")<<s,0;
}