Cod sursa(job #1213895)

Utilizator mihaimusatMihai Musat mihaimusat Data 29 iulie 2014 09:59:36
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <algorithm>

using namespace std;

int d[50005], v[1005] , s[1005];

int n,i,j,k,Max;

int main () {

    ifstream f("economie.in");
    ofstream g("economie.out");
    f>>n;
    for (i=1;i<=n;i++) {
        f>>v[i];
        if (v[i]>Max)
            Max=v[i];
    }
    sort (v+1,v+n+1);
    for (i=1;i<=n;i++)
        if (d[v[i]]==0) {
            s[++k]=v[i];
            d[v[i]]=1;
            for (j=1;j<=Max-v[i];j++) {
                if (d[j]==1)
                    d[j+v[i]]=1;
            }
        }
    g<<k<<"\n";

    for (i=1;i<=k;i++)
        g<<s[i]<<"\n";

    return 0;
}