Pagini recente » Cod sursa (job #2432305) | Cod sursa (job #2533572) | Cod sursa (job #3275169) | Cod sursa (job #1236551) | Cod sursa (job #3163836)
#include <bits/stdc++.h>
using namespace std;
int a[10001], vf[500001];
int main(void){
ofstream cout("economie.out");
ifstream cin("economie.in");
int n;
cin >> n;
for(int i = 1;i<=n;i++){
cin >> a[i];
}
vector<int> ans;
vf[0] = 1;
sort(a+1,a+n+1);
for(int i = 1;i<=n;i++){
if(vf[a[i]] == 0){
ans.push_back(a[i]);
for(int j = 0;j+a[i]<=a[n];j++){
if(vf[j] == 1){
vf[j + a[i]] = 1;
}
}
}
}
cout << ans.size() << '\n';
for(auto x: ans)cout << x << ' ';
}