Pagini recente » Cod sursa (job #1058282) | Cod sursa (job #2664918) | Cod sursa (job #2108461) | Cod sursa (job #3196054) | Cod sursa (job #2078870)
#include <fstream>
using namespace std;
int n,k,Min,a[5000005],coada[5000005],i,j,p,u;
long long s;
ifstream f("deque.in");
ofstream g("deque.out");
void citire()
{
f>>n>>k;
for(i=0;i<n;i++)
{
f>>a[i];
}
}
int rezolvare()
{
coada[0]=0;
p=u=0;
for(i=1;i<n;i++)
{
if(coada[p]== i-k && p<=u)p++;
while(u>=p)
if(a[i]<=a[coada[u]]) u--;
else break;
coada[++u]=i;
if(i>=k-1)
{
s+=a[coada[p]];
}
}
return s;
}
int main()
{
citire();
g<<rezolvare()<<'\n';
return 0;
}