Pagini recente » Cod sursa (job #2359985) | Cod sursa (job #169596) | Cod sursa (job #1682587) | Cod sursa (job #693853) | Cod sursa (job #153646)
Cod sursa(job #153646)
#include<stdio.h>
#include<algorithm>
using namespace std;
#define nmax 50002
#define nmic 1001
int a[nmax],sol[nmic],nr[nmic];
int main()
{
freopen("economie.in","r",stdin);
freopen("economie.out","w",stdout);
int n,max=0,i,j;
scanf("%d",&n);
for(i=1; i<=n; ++i){
scanf("%d",&nr[i]);
if(max<nr[i])
max=nr[i];}
sort(nr+1,nr+1+n);
int nrsol=0,val;
a[0]=1;
for(i=1; i<=n; ++i){
if( !a[nr[i]] ){
++nrsol;
sol[nrsol]=nr[i];
val=nr[i];
for(j=val; j<=max; ++j)
if( j-val>=0){
if(a[j-val]==1)
a[j]=1;
}
else{
if( !j%val )
a[j]=1;
}
}
}
printf("%d\n",nrsol);
for(i=1; i<=nrsol; ++i)
printf("%d\n",sol[i]);
return 0;
}