Pagini recente » Cod sursa (job #1825441) | Cod sursa (job #2037965) | Cod sursa (job #843843) | Cod sursa (job #2582385) | Cod sursa (job #1315653)
#include<fstream>
#include<deque>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
int n,k,x;
long long s;
deque<int>val,poz;
int main()
{
f>>n>>k;
for(int i=1;i<=k;i++)
{
f>>x;
while(val.size()&&x<val[val.size()-1])
{
val.pop_back();
poz.pop_back();
}
val.push_back(x);
poz.push_back(i);
}
s=val[0];
for(int i=k+1;i<=n;i++)
{
f>>x;
while(val.size()&&x<val[val.size()-1])
{
val.pop_back();
poz.pop_back();
}
val.push_back(x);
poz.push_back(i);
if(poz[0]<=i-k)
{
val.pop_front();
poz.pop_front();
}
s+=val[0];
}
g<<s;
f.close();g.close();
return 0;
}