Pagini recente » Cod sursa (job #1904053) | Cod sursa (job #258444) | Cod sursa (job #1580747) | Cod sursa (job #2133815) | Cod sursa (job #1276342)
#include<fstream>
#include<algorithm>
using namespace std;
int n, i, j, nr;
int v[1001], f[50001], s[1001];
ifstream fin("economie.in");
ofstream fout("economie.out");
int main(){
fin>> n;
for(i = 1; i <= n; i++){
fin>> v[i];
}
sort(v + 1, v + n + 1);
f[0] = 1;
for(i = 1; i <= n; i++){
if(f[v[i]] == 0){
s[++nr] = v[i];
for(j = 0; j <= v[n]; j++){
if(j + v[i] <= v[n]){
if(f[j] == 1){
f[j+v[i]] = 1;
}
}
else{
break;
}
}
}
}
fout<< nr <<"\n";
for(i = 1; i <= nr; i++){
fout<< s[i] <<" ";
}
return 0;
}