Cod sursa(job #2078339)

Utilizator AlexandruabcdeDobleaga Alexandru Alexandruabcde Data 29 noiembrie 2017 13:12:36
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.86 kb
#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;
}