Pagini recente » Cod sursa (job #3226214) | Cod sursa (job #2645492) | Cod sursa (job #2411087) | Cod sursa (job #2661347) | Cod sursa (job #2557571)
#include <fstream>
#include <vector>
#include <algorithm>
#define nmax 1002
#define vmax 50002
using namespace std;
ifstream fin("economie.in");
ofstream fout("economie.out");
int n,maxx;
int mon[nmax];
bool ap[vmax];
vector <int> ans;
int main()
{
fin>>n;
for(int i=1;i<=n;i++)
{
fin>>mon[i];
maxx=max(maxx,mon[i]);
}
sort(mon+1,mon+n+1);
ap[0]=1;
for(int i=1;i<=n;i++)
{
if(ap[mon[i]]==0)
ans.push_back(mon[i]);
for(int j=0;j+mon[i]<=maxx;j++)
if(ap[j]==1)
ap[mon[i]+j]=1;
}
fout<<ans.size()<<"\n";
for(int i=0;i<ans.size();i++)
fout<<ans[i]<<"\n";
return 0;
}