Pagini recente » Cod sursa (job #1802878) | Cod sursa (job #3188796) | Cod sursa (job #298982) | Cod sursa (job #190495) | Cod sursa (job #775591)
Cod sursa(job #775591)
#include <fstream>
#include <algorithm>
using namespace std;
int N, cnt = 1;
int v[1005];
int x[50005];
int lol[50005];
void Citire ()
{
ifstream fin ("economie.in");
fin >> N;
for (int i = 0; i < N; i++)
{
fin >> v[i];
}
sort (v, v + N);
x[v[0]] = 1;
for (int i = 0; i <= 50000; i += v[0])
{
lol[i] = 1;
}
fin.close ();
}
void Business ()
{
for (int i = 1; i < N; i++)
{
if (!lol[v[i]])
{
cnt++;
x[v[i]] = 1;
for (int j = 0; j <= 50000 - v[i]; j++)
{
if (lol[j]) lol[j + v[i]] = 1;
}
}
}
}
void Scriere () {
ofstream fout ("economie.out");
fout << cnt << "\n";
for (int i = 1; i <= v[N - 1]; i++)
{
if (x[i]) fout << i << "\n";
}
fout.close ();
}
int main () {
Citire ();
Business ();
Scriere ();
return 0;
}