Cod sursa(job #3162572)

Utilizator MrPuzzleDespa Fabian Stefan MrPuzzle Data 29 octombrie 2023 13:41:39
Problema Economie Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <iostream>
#include <fstream>
#include <deque>
#include <algorithm>

#define DIM 1000
#define MAX 50000
using namespace std;

//ifstream f("in.in");
//ofstream g("out.out");

ifstream f("economie.in");
ofstream g("economie.out");


int v[DIM+5],n,k;
int u[MAX+5];
int sol[DIM+5],solk=0;


int main()
{

    f>>n;
    for(int i=1;i<=n;i++){
        f>>v[i];
    }
    sort(v+1,v+n+1);

    u[0] = 1;
    for(int i=1;i<=n;i++){

        if(!u[v[i]]){

            sol[++solk] = v[i];

            for(int j=v[i];j<=MAX;j++){
                if(u[j-v[i]]){
                    u[j] = 1;
                }
            }
        }
    }

    g<<solk<<"\n";
    for(int i=1;i<=solk;i++){
        g<<sol[i]<<"\n";
    }

    return 0;
}