Cod sursa(job #1323101)

Utilizator goalexboxerFMI Alexandru Ionascu goalexboxer Data 20 ianuarie 2015 17:35:35
Problema Deque Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 1.29 kb
#include<stdio.h>
#include<deque>
#include<vector>
#define FIN "deque.in"
#define FOUT "deque.out"
#define MAX 5000000
using namespace std;


deque<int> v;
vector<int> minNum;
int arr[MAX];
long int sum;
unsigned int n,k;


int read()
{
    freopen(FIN,"r",stdin);
    freopen(FOUT,"w",stdout);
    scanf("%d %d ", &n, &k);

    for(int i=1;i<=n;i++)
    {
        scanf("%d", &arr[i]);
    }

    return 0;
}

int solve()
{
    for(int i=1;i<=k;i++)
        v.push_back(arr[i]);

    int index = k;

    while(index < n)
    {
        int minn = *v.begin();
        for(deque<int>::iterator it = v.begin(); it != v.end(); it++)
        {
            if(minn > *it)
                minn = *it;
        }

        minNum.push_back(minn);

        v.push_back(arr[index+1]);
        v.pop_front();

        index++;

    }

    int minn = *v.begin();
    for(deque<int>::iterator it = v.begin(); it != v.end(); it++)
    {
        if(minn > *it)
            minn = *it;
    }

    minNum.push_back(minn);

    for(vector<int>::iterator it = minNum.begin(); it != minNum.end(); it++)
    {
        sum += *it;
    }



    return 0;
}

int write()
{
    printf("%d", sum);
    return 0;
}

int main()
{
    read();
    solve();
    write();
}