Pagini recente » Cod sursa (job #520219) | Cod sursa (job #99107) | Cod sursa (job #219248) | Cod sursa (job #399936) | Cod sursa (job #994120)
Cod sursa(job #994120)
#include<stdio.h>
#include<algorithm>
using namespace std;
int v[1002],sol[1002],f[50002];
int main()
{
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
int n,i,j,s=0,max,m;
scanf("%d",&n);
for(i=1;i<=n;++i)
scanf("%d",&v[i]);
sort(v+1,v+1+n);
max=v[n];
f[0]=1;
for(i=1;i<=n;++i)
{
if(f[v[i]]==0)
{
sol[++s]=v[i];
m=max-v[i];
for(j=0;j<=m;++j)
if(f[j])
f[j+v[i]]=1;
}
}
printf("%d\n",s);
for(i=1;i<=s;++i)
printf("%d\n",sol[i]);
return 0;
}