Pagini recente » Cod sursa (job #1134655) | Cod sursa (job #1722070) | Cod sursa (job #2457003) | Cod sursa (job #536883) | Cod sursa (job #3177871)
#include <bits/stdc++.h>
#define cin fin
#define cout fout
#define NMAX 1005
#define GMAX 50005
using namespace std;
ifstream cin("economie.in");
ofstream cout("economie.out");
int v[NMAX], sol[GMAX], n, cnt, ok[GMAX];
int main() {
cin >> n;
for (int i = 1; i <= n; i++)
cin >> v[i];
sort(v + 1, v + n + 1);
for (int i = 1; i <= n; i++) {
if (!ok[v[i]]) {
ok[v[i]] = 1;
sol[++cnt] = v[i];
}
for (int j = 1; j + v[i] <= 50000; j++) {
if (ok[j]) {
ok[j + v[i]] = 1;
}
}
}
cout << cnt << '\n';
for (int i = 1; i <= cnt; i++)
cout << sol[i] << ' ';
return 0;
}