Cod sursa(job #2987180)

Utilizator LucaT2Tasadan Luca LucaT2 Data 2 martie 2023 08:40:39
Problema Economie Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <bits/stdc++.h>

using namespace std;

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

int dp[50005];
int n,v[1005];

int main()
{

    fin>>n;
    int sol;
    for(int i=1;i<=n;i++){
        fin>>v[i];
    }
    dp[0]=1;
    sort(v+1,v+n+1);
    for(int i=1;i<=n;i++)
    {
        bool ok=true;
        for(int j=0;j<=v[n]-v[i];j++)
            if(dp[j])
                dp[j+v[i]]=1;

        for(int k=1;k<=n;k++){
            if(!dp[v[k]])
                ok=false;
        }

        if(ok){
            sol=i;
            break;
        }
    }
    fout<<sol<<"\n";
    for(int i=1;i<=sol;i++)
        fout<<v[i]<<"\n";
    return 0;
}