Pagini recente » Cod sursa (job #480819) | Cod sursa (job #2290434) | Cod sursa (job #398161) | Cod sursa (job #3205670) | Cod sursa (job #778981)
Cod sursa(job #778981)
#include <cstdio>
#include <cstdlib>
#include <vector>
#include <algorithm>
#include <cstring>
using namespace std;
int N, v[1010], sol, ap[50010], X;
vector<int> Vsol;
int main()
{
freopen("economie.in", "r", stdin);
freopen("economie.out", "w", stdout);
int i, j;
scanf("%i", &N);
for(i = 1; i <= N; i++) scanf("%i", &v[i]);
sort(v + 1, v + N + 1);
for(i = 1; i <= N; i++)
{
X = v[i];
if(ap[X] == 0)
{
sol ++;
Vsol.push_back(X);
for(j = 0; j + X <= 50000; j ++)
if(ap[j] == 1 || j == 0)
ap[j + X] = 1;
}
}
printf("%i\n", sol);
for(i = 0; i < sol; i++) printf("%i\n", Vsol[i]);
return 0;
}