Cod sursa(job #3163121)

Utilizator Bianca2507Negret Bianca Bianca2507 Data 30 octombrie 2023 16:47:50
Problema Economie Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>
#include <vector>
#include <set>
#include <algorithm>
#include <cstring>
using namespace std;
ifstream cin("economie.in");
ofstream cout("economie.out");
int n,v[1001],nr,k,fr[50002],x[1001];
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>v[i];
    sort(v+1,v+n+1);
    ///un fel de ciurul lui eratostene
    fr[0]=1;
    for(int i=1;i<=n;i++)
    {
        if(fr[v[i]]==0)
        {
            x[++nr]=v[i];
            for(int j=0;j+v[i]<=v[n];j++)
                if(fr[j]==1)
                fr[v[i]+j]=1;
        }
    }
    cout<<nr<<'\n';
    for(int i=1;i<=nr;i++)
        cout<<x[i]<<" ";
    return 0;
}