Cod sursa(job #3164599)

Utilizator Antonio_BiscoveanuAntonio Biscoveanu Antonio_Biscoveanu Data 3 noiembrie 2023 19:52:49
Problema Economie Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <bits/stdc++.h>

using namespace std;
ifstream fin("economie.in");
ofstream fout("economie.out");
int n,v[1005],posibil[50005],k;
queue <int> sol;
int main()
{
    fin>>n;
    for(int i=1;i<=n;i++)
        fin>>v[i];
    sort(v+1,v+n+1);
    for(int i=1;i<=n;i++)
    {
        if(posibil[v[i]]==0)
        {
            posibil[v[i]]=1;
            sol.push(v[i]);
            for(int p=v[i];p<=v[n];p++)
                if(posibil[p-v[i]])
                    posibil[p]=1;
        }
    }
    fout<<sol.size()<<'\n';
    while(!sol.empty())
    {
        fout<<sol.front()<<'\n';
        sol.pop();
    }
    return 0;
}