Cod sursa(job #1146338)

Utilizator tudi98Cozma Tudor tudi98 Data 18 martie 2014 21:25:18
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <fstream>
#include <algorithm>
#include <queue>
#define dim 50001
using namespace std;
ifstream f("economie.in");
ofstream g("economie.out");
queue<int> S;
long a[1001],d[dim],i,j,n;

int main()
{
    f>>n;
    for(i=1;i<=n;i++)
    f>>a[i];
    sort(a+1,a+n+1);

    for(i=1;i<=n;i++)
    {
        if(!d[a[i]])
        {
            S.push(a[i]);
            d[a[i]]=1;
            for(j=1;j<=a[n]-a[i];j++)
            if(d[j]) d[j+a[i]]=1;
        }
    }

    g<<S.size()<<"\n";
    while(!S.empty()){
    g<<S.front()<<"\n";
    S.pop();
    }

}