Pagini recente » Cod sursa (job #15392) | Cod sursa (job #586326) | Cod sursa (job #1538816) | Cod sursa (job #2970937) | Cod sursa (job #360086)
Cod sursa(job #360086)
#include<stdio.h>
#include<algorithm>
using namespace std;
long n,i,a[1050],b[1050],f[50050],m,j;
int main()
{
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
scanf("%ld",&n);
for(i=1;i<=n;++i)
{scanf("%ld",&a[i]);
if(m<a[i])m=a[i];}
sort(a+1,a+n+1);
f[0]=1;
for(i=1;i<=n;++i)
if(f[i]==0)
{b[++b[0]]=a[i];
for(j=0;j<=m;++j)
if(f[j]&&j+a[i]<=m)f[j+a[i]]=1;}
printf("%ld\n",b[0]);
for(i=1;i<=b[0];++i)
printf("%ld\n",b[i]);
return 0;
}