Pagini recente » Cod sursa (job #2274397) | Cod sursa (job #1490997) | Cod sursa (job #1559951) | Cod sursa (job #298730) | Cod sursa (job #1184749)
#include <fstream>
#include <algorithm>
#define NMax 1001
using namespace std;
ifstream f("economie.in");
ofstream g("economie.out");
int n, val[NMax], subset[NMax], valid[50001], i, j, p, k, Max=-1;
int main()
{
f>>n;
for (i=1; i<=n; i++) {
f>>val[i];
valid[val[i]]=1;
if (Max < val[i])
Max=val[i];
}
sort (val+1, val+n+1);
for (i=1; i<=n; i++) {
if (valid[val[i]]==1) {
subset[++k]=val[i];
for (j=1; j<=Max-val[i]; j++)
if (valid[j]==1)
valid[val[i]+j]=0;
}
}
g<<k<<"\n";
for (i=1; i<=k; i++)
g<<subset[i]<<"\n";
return 0;
}