Pagini recente » Cod sursa (job #545967) | Cod sursa (job #2242390) | Cod sursa (job #2068071) | Cod sursa (job #1702052) | Cod sursa (job #2104799)
#include <fstream>
using namespace std;
ifstream f("deque.in");
ofstream g("deque.out");
const int nmax = 5000000 ;
int fr, bk, dq[nmax], i, n, k, a[nmax];
long long sum=0;
int main()
{
f >> n >> k;
for( i = 1 ; i <= n; i++ )
f >> a[i];
fr =1; bk =0;
for( i = 1; i <= n ; i++)
{
while( fr<= bk && a[i] <= a[dq[bk]] )
bk--;
dq[++bk] = i;
if( dq[fr] == i-k)
fr++;
if(i >= k)
sum+= a[dq[fr]];
}
g << sum;
return 0;
}