Cod sursa(job #1384499)

Utilizator StarGold2Emanuel Nrx StarGold2 Data 11 martie 2015 10:02:06
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <fstream>
#include <algorithm>
#define DIM 50010
using namespace std;

ifstream fin ("economie.in" );
ofstream fout("economie.out");

int N, V[DIM], i, j, k, F[DIM];
int nr, val, Sol[DIM];

void SetUp(){
     fin >> N;
     for(i = 1; i <= N; i ++)
          fin >> V[i];
     sort(V + 1, V + N + 1);
     return;
}

void Code(){
     for(i = 1; i <= N; i ++){
          if(F[V[i]] == 0){
               F[V[i]] = 1;
               for(j = 0; j <= DIM-10-V[i]; j ++)
                    if(F[j] == 1) F[j + V[i]] = 1;
               Sol[++val] = V[i];
          }
     }
     fout << val << "\n";
     for(i = 1; i <= val; i ++)
          fout << Sol[i] << "\n";
     return;
}

int main(){
     SetUp();
     Code();
     return 0;
}