Pagini recente » Cod sursa (job #2327843) | Cod sursa (job #668026) | Cod sursa (job #2672552) | Cod sursa (job #10039) | Cod sursa (job #419942)
Cod sursa(job #419942)
#include <stdio.h>
#include <algorithm>
using namespace std;
int v[1001];
int out[1001];
int a[50001];
int n;
int i,j,aux;
int pmax,m;
int main(){
FILE *f1 = fopen("economie.in","r");
fscanf(f1,"%d",&n);
for(i=1; i<=n; i++)
fscanf(f1,"%d",&v[i]);
fclose(f1);
sort(v+1,v+n+1);
pmax = 0;
a[0] = 1;
for(i=1; i<=n; i++){
if(a[v[i]] == 0){
a[v[i]] = 1;
m++;
out[m] = v[i];
}
for(j=1; j<=v[n]; j++)
if(a[j] == 1)
if(j+v[i]<=v[n] && a[j + v[i]] == 0)
a[j + v[i]] = 1;
}
FILE *f2 = fopen("economie.out","w");
fprintf(f2,"%d",m);
for(i=1; i<=m; i++)
fprintf(f2,"\n%d",out[i]);
fclose(f2);
return 0;
}