Pagini recente » Cod sursa (job #444828) | Cod sursa (job #2753008) | Cod sursa (job #1296591) | Cod sursa (job #1732969) | Cod sursa (job #2022101)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin("economie.in");
ofstream fout("economie.out");
const unsigned short NMax=1005;
unsigned short N,A[NMax],Sol[NMax],k,P[50001];
int main()
{
fin>>N;
for(int i=1;i<=N;++i)
{
fin>>A[i];
}
sort(A+1,A+N+1);
P[0]=1;
for(int i=1;i<=N;i++)
{
if(P[A[i]]==0)
{
++k;
Sol[k]=A[i];
for(int j=0;j<=50000;j++)
{
if(P[j]==1 && j+A[i]<=50000)
P[j+A[i]]=1;
}
}
}
fout<<k<<"\n";
for(int i=1;i<=k;++i)
{
fout<<Sol[i]<<"\n";
}
return 0;
}