Cod sursa(job #2820409)
| Utilizator | Data | 20 decembrie 2021 12:27:11 | |
|---|---|---|---|
| Problema | Deque | Scor | 60 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
#include <deque>
#define ll long long
using namespace std;
ifstream cin ("deque.in");
ofstream cout ("deque.out");
ll n,m,i,a,sum=0;
deque <pair<ll,ll> > v;
int main()
{
cin>>n>>m;
for (i=1;i<=n;++i)
{
cin>>a;
while (!v.empty() && v.back().first>a) v.pop_back();
v.push_back({a,i});
if (i>=m)
{
while (v[0].second<=i-m) v.pop_front();
sum+=v[0].first;
}
}
cout<<sum;
return 0;
}
