Cod sursa(job #779275)

Utilizator icb_mnStf Cic icb_mn Data 17 august 2012 12:53:46
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>

using namespace std;

ifstream f("deque.in");
ofstream g("deque.out");

#define NMAX 5000001
#define INFINIT 100000000

int n,k,a[NMAX];
long long suma;

void deque()
{
    f>>n>>k;

    for(int i = 0; i < n; ++i)f>>a[i];

    int mic = INFINIT,p = 0;

    for(int i = 1; i <= n; ++i)
    {
        if(a[i] < mic)mic = a[i],p = i + 1;

        if(p <= i - k)
        {
            mic =  INFINIT,p = 0;

            for(int j = 0; j < k;++j)if(a[i - j] <= mic)mic = a[i - j],p = (i - j) + 1;
        }

        if(i >= k)suma += mic;
    }

    g<<suma<<'\n';

}
int main()
{
    deque();

    g.close();

    return 0;
}