Pagini recente » Cod sursa (job #414355) | Cod sursa (job #265104) | Cod sursa (job #932475) | Cod sursa (job #1959234) | Cod sursa (job #414180)
Cod sursa(job #414180)
using namespace std;
#include <fstream>
int v[50005], n ,Max, x[1001],c[1001], nc;
void back(int k,int s){
for(int i=0;s+i*c[k]<=Max;i++){
x[k]=i;
v[s+i*c[k]]=0;
if(k<nc)
back(k+1,s+i*c[k]);
}
}
int main(){
ifstream fin("economie.in");
fin>>n;
for(int i=1;i<=n;++i){
int x;
fin>>x;
v[x]=1;
if(x>Max)
Max=x;
}
for(int i=1;i<=Max;++i)
if(v[i]==1){
c[++nc]=i;
back(1,0);
}
ofstream fout("economie.out");
fout<<nc<<"\n";
for(int i=1;i<=nc;++i)
fout<<c[i]<<"\n";
return 0;
}