Pagini recente » Cod sursa (job #3262432) | Cod sursa (job #468563) | Cod sursa (job #2404962) | Cod sursa (job #778657) | Cod sursa (job #3145107)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("economie.in");
ofstream fout("economie.out");
int n, i, j, a[50002];
queue<int> r;
bool d[50002];
int main() {
fin >> n;
d[0] = 1;
for(i = 1; i <= n; i++) fin >> a[i];
sort(a + 1, a + n + 1);
for(i = 1; i <= n; i++) {
if(!d[a[i]]) {
d[a[i]] = true;
r.push(a[i]);
for(j = 0; j < 50002 - a[i]; j++) {
if(d[j]) d[j + a[i]] = true;
}
}
}
fout << r.size() << "\n";
while(!r.empty()) {
fout << r.front() << " ";
r.pop();
}
return 0;
}