Cod sursa(job #1936189)

Utilizator Ruxandra985Nanu Ruxandra Laura Ruxandra985 Data 22 martie 2017 21:56:02
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <cstdio>
#include <algorithm>

using namespace std;
int v[1001],f[50001],ff[50001];
int main()
{
    FILE *fin=fopen ("economie.in","r");
    FILE *fout=fopen ("economie.out","w");
    int n,i,obt,j;
    fscanf (fin,"%d",&n);
    for (i=1;i<=n;i++){
        fscanf (fin,"%d",&v[i]);
        ff[v[i]]=1;
    }
    sort (v+1,v+n+1);
    f[0]=1;
    obt=0;
    for (i=1;i<=n && obt<n;i++){
        for (j=0;j+v[i]<=v[n];j++){
           // printf ("%d ",j+v[i]);
            if (f[j+v[i]]==0){
                f[j+v[i]]=1;
                if (ff[j+v[i]]==1)
                    obt++;
            }
        }
    }
    fprintf (fout,"%d\n",i-1);
    for (j=1;j<=i-1;j++)
        fprintf (fout,"%d ",v[j]);
    return 0;
}