Pagini recente » Cod sursa (job #3150514) | Cod sursa (job #406906) | Cod sursa (job #109738) | Cod sursa (job #1296790) | Cod sursa (job #2078339)
#include <fstream>
using namespace std;
int n,k,i,COADA[5000002],a[5000002],u,sum;
ifstream f ("deque.in");
ofstream g ("deque.out");
void formcoada( int COADA[5000002], int a[5000002], int &d, int c, int v)
{
int s=1;
COADA[1]=1;
for (int i=2; i<=c; i++)
{
if (i-COADA[s]>=v)
{
s++;
}
if (a[i]<a[COADA[d]])
{
while (a[i]<a[COADA[d]] && i-COADA[d]<v)
{
d--;
}
d++;
COADA[d]=i;
}
else
{
d++;
COADA[d]=i;
}
}
}
int main()
{
f>>n>>k;
u=1;
for (i=1;i<=n;i++)
{
f>>a[i];
}
formcoada(COADA,a,u,n,k);
for (i=1;i<=u;i++)
{
sum=sum+a[COADA[i]];
}
g<<sum<<'\n';
return 0;
}