Cod sursa(job #323719)

Utilizator freak93Adrian Budau freak93 Data 13 iunie 2009 11:27:53
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<fstream>
#include<algorithm>
#define maxv 50002
#define maxn 1005

using namespace std;

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

int a[maxv],r[maxn],i,j,n,k,p,x[maxn];

int main()
{
    f>>n;

    for(i=1;i<=n;++i)
        f>>r[i];

    a[0]=1;

    sort(r+1,r+n+1);

    for(i=1;i<=n;++i)
        if(!a[r[i]])
        {
            x[++p]=r[i];

            k=50000-r[i];
            for(j=0;j<=k;++j)
                if(a[j])
                    a[j+r[i]]=1;
        }

    g<<p<<"\n";

    for(i=1;i<=p;++i)
        g<<x[i]<<" ";

    g<<"\n";

    f.close();
    g.close();

    return 0;
}