Cod sursa(job #2770949)

Utilizator AlexSerban21Serban Alexandru AlexSerban21 Data 24 august 2021 12:02:27
Problema Economie Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream fin ("economie.in");
ofstream fout ("economie.out");
int n,i,s,k,ok,j,x,f[50001],v[1001],h[1001];
int main()
{
    fin>>n;
    for (i=1; i<=n; i++)
        fin>>v[i];
    sort (v+1,v+n+1);
    f[0]=1;
    f[v[1]]=1;
    h[1]=v[1];
    k=1;
    for (j=2; j<=n; j++)
    {
        x=v[j];
        ok=0;
        for (i=1; i<=50000; i++)
        {
            if (f[i]==1)
            {
                if (x%i==0)
                {
                    ok=1;
                    break;
                }
            }
        }
        if (ok==0)
        {
            h[++k]=v[j];
            for (i=50000; i>0; i--)
            {
                if (i+v[j]<=50000&&f[i]==1)
                    f[i+v[j]]=1;
            }
        }
    }
    fout<<k<<"\n";
    for (i=1; i<=k; i++)
        fout<<h[i]<<" ";
    return 0;
}