Cod sursa(job #935751)

Utilizator CrescentselectJicol Crescent Crescentselect Data 4 aprilie 2013 17:50:31
Problema Deque Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.82 kb
#include <iostream>
#include<fstream>
#include<deque>
#include<vector>
#include<limits.h>

using namespace std;

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

int n,k,tmp;
long long s;
long long m;

vector <int> v;
deque <int> d;

void minim()
{
    m = INT_MAX;
    for(int i=1;i<=k;i++)
    {
        if(d[i-1] < m)
        {
            m = d[i-1];
        }
    }
    s+=m;
}

void citire()
{
    int x;
    f>>n>>k;
    for( int i=1;i<=n;i++)
    {
        f>>x;
        v.push_back(x);
    }
}
void proces()
{
    for( int i=1;i<=k;i++)
    {
        d.push_back(v[i-1]);
    }
    while (tmp <= n-k)
    {
        minim();
        d.pop_front();
        d.push_back(v[tmp+k]);
        tmp++;
    }
    g<<s;
}
int main()
{
    citire();
    proces();
    return 0;
}