Pagini recente » Cod sursa (job #1617851) | Cod sursa (job #2786111) | Cod sursa (job #2777212) | Cod sursa (job #1667896) | Cod sursa (job #775619)
Cod sursa(job #775619)
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
bool v[50007];
long n,nr,c[50006],a[1007];
void ciurdif()
{
long i,j;
c[1]=a[1];
nr=1;
for (i=0;i<=50000;i+=a[1])
v[i]=1;
for (i=2;i<=n;i++)
if (v[a[i]]==0)
{
c[++nr]=a[i];
v[a[i]]=1;
for (j=1;j<=50000;j++)
if (v[j]==1&&j+a[i]<=50000)
v[j+a[i]]=1;
}
}
int main()
{
long i;
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;i++)
scanf("%ld",&a[i]);
sort (a+1,a+n+1);
ciurdif();
printf("%ld\n",nr);
for (i=1;i<=nr;i++)
printf("%ld\n",c[i]);
return 0;
}