Cod sursa(job #1910820)

Utilizator mariusn01Marius Nicoli mariusn01 Data 7 martie 2017 18:27:42
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream>
#include <algorithm>

using namespace std;
int v[1010];
int d[50010];
int sol[1010];
int n, i, j, k;
int main () {
    ifstream fin ("economie.in");
    ofstream fout("economie.out");

    fin>>n;
    for (i=1;i<=n;i++)
        fin>>v[i];
    sort(v+1, v+n+1);
    d[0] = 1;

    for (i=1;i<=n;i++)
        if (d[v[i]] == 0) {
            sol [++k] = v[i];
            for (j=0;j+v[i]<=v[n];j++)
                if (d[j] == 1)
                    d[j+v[i]] = 1;

        }
    fout<<k<<"\n";
    for (i=1;i<=k;i++)
        fout<<sol[i]<<"\n";
    return 0;
}