Pagini recente » Cod sursa (job #514238) | Cod sursa (job #1362882) | Cod sursa (job #27139) | Cod sursa (job #1410037) | Cod sursa (job #1479100)
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005],f[1005];
int aux[50005];
int main()
{
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
int n,i,maxx=0,minn=1000000,nr,cnt=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&v[i]);
if(v[i]>=maxx) maxx=v[i];
if(v[i]<=minn) minn=v[i];
}
//printf("%d",maxx);
sort(&v[1],&v[n+1]);
//for(i=1;i<=n;i++) printf("%d ",v[i]);
for(i=1;i<=n;i++)
{
if(aux[v[i]]==0)
{
cnt++;
f[cnt]=v[i];
aux[v[i]]=1;
nr=maxx-v[i];
for(int j=1;j<=nr;j++)
{
if(aux[j]==1)
{
aux[j+v[i]]=1;
}
}
}
}
printf("%d\n",cnt);
for(i=1;i<=cnt;i++)
{
printf("%d\n",f[i]);
}
return 0;
}