Cod sursa(job #1374162)

Utilizator Stone16Lakatos Martin Stone16 Data 4 martie 2015 23:33:17
Problema Transport Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.99 kb
#include <iostream>
#include <fstream>
using namespace std;
int n, k, kk = 0, c, cc;
int v[16000], vv[16000], minim = 16001;
void init();
int verif(int &j);
void trans(int i);
void afis();

int main()
{
        init();
        trans(0);
        afis();
        return 0;
}

void init()
{
        ifstream in("transport.in");
        in >> n >> k;
        for(int i = 0; i < n; i++)
                in >> v[i];
        c = v[0];
        in.close();
}

void afis()
{
        ofstream out("transport.out");
        out << c;
        out.close();
}

int verif(int &i)
{
        if(cc <= c && i <= n)
                return 1;
        i--;
        if(cc < minim)
                minim = cc;
        return 0;
}

void trans(int i)
{
        cc = 0;
        while(verif(i))
                cc += v[i++];
        kk++;
        if(kk < k)
                trans(i);
        else if(i+1 <= n)
        {
                c = minim;
                minim = 16001;
                kk = 0;
                trans(0);
        }
}