Pagini recente » Cod sursa (job #2525036) | Cod sursa (job #1704229) | Cod sursa (job #650531) | Cod sursa (job #1499552) | Cod sursa (job #278039)
Cod sursa(job #278039)
#include<stdio.h>
#define DIM 50005
long v[1005],sol[1005],n,i,j,k,aux;
int s[DIM];
int main(){
FILE *f = fopen("economie.in","r");
FILE *g = fopen("economie.out","w");
fscanf(f,"%ld",&n);
for(i=1;i<=n;i++)
fscanf(f,"%ld",&v[i]);
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++){
if(v[j]<v[i]){
aux = v[i];
v[i] = v[j];
v[j] = aux;
}
}
s[0]=1;
for(i=1;i<=n;i++){
if(s[v[i]] == 0)
sol[++k] = v[i];
for(j=0;j+v[i]<=v[n];j++)
if(s[j] == 1)
s[j+v[i]] = 1;
}
fprintf(g,"%ld\n",k);
for(i=1;i<=k;i++)
fprintf(g,"%ld ",sol[i]);
fclose(f);
fclose(g);
return 0;
}