Pagini recente » Cod sursa (job #950599) | Cod sursa (job #2346235) | Cod sursa (job #2115491) | Cod sursa (job #3122246) | Cod sursa (job #113174)
Cod sursa(job #113174)
#include <stdio.h>
#include <algorithm>
using namespace std;
#define maxn 1010
#define maxx 50010
int l,n;
int c[maxx];
int a[maxn],sol[maxn];
int main()
{
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
scanf("%d ",&n);
int i,j;
for (i=1;i<=n;i++) scanf("%d ",&a[i]);
sort(a+1,a+n+1);
for (i=1;i<=n;i++)
if (!c[a[i]])
{
sol[++l]=a[i];
c[a[i]]=1;
for (j=1;j+a[i]<=a[n];j++) c[j+a[i]]|=c[j];
}
printf("%d\n",l);
for (i=1;i<=l;i++) printf("%d\n",sol[i]);
return 0;
}