Pagini recente » Cod sursa (job #2171606) | Cod sursa (job #2155715) | Cod sursa (job #889756) | Cod sursa (job #2796248) | Cod sursa (job #988358)
Cod sursa(job #988358)
#include <fstream>
#include <algorithm>
#define N 1001
#define M 50001
using namespace std;
FILE *fin=fopen("economie.in", "r"), *fout=fopen("economie.out", "w");
int a[N], sol[N], b[M];
int main()
{
int n, i, j, k=0;
fscanf(fin, "%d", &n);
for(i=1;i<=n;i++)
{
fscanf(fin, "%d", &a[i]);
}
sort(a+1, a+n+1);
b[0]=1;
for(i=1;i<=n;i++)
{
if(!b[a[i]])
{
sol[++k]=a[i];
for(j=0;j<=M-a[i];j++)
{
if(b[j]) b[j+a[i]]=1;
}
}
}
fprintf(fout, "%d\n", k);
for(i=1;i<=k;i++)
{
fprintf(fout, "%d\n", sol[i]);
}
}