Pagini recente » Istoria paginii utilizator/uaic_ciobanu_gotca_lungu | Cod sursa (job #1156749) | Cod sursa (job #281718) | Statistici CNFB Circeanu Piele (makaraminkerkat) | Cod sursa (job #2725313)
#include <iostream>
#include<fstream>
#define N 5000005
using namespace std;
ifstream fin("deque.in");
ofstream fout("deque.out");
int st,dr;
int a[N],n,k;
struct stiva
{
int val,poz;
}s[N];
/*3
{1}
*/
void solve()
{
int i;
long long sum=0;
for(i = 1; i <= n; ++i)
{
while(a[i] < s[dr].val && dr >= st)
dr--;
s[++dr].val=a[i];
s[dr].poz=i;
if(s[dr].poz - s[st].poz == k)
st++;
if(i >= k)
sum = 1LL* (sum + s[st].val);
}
fout<<sum;
}
int main()
{
int i;
fin>>n>>k;
for(i=1;i<=n;++i)
fin>>a[i];
solve();
return 0;
}