Cod sursa(job #2869541)

Utilizator dariusbandilaBandila Darius-Mihai dariusbandila Data 11 martie 2022 17:09:44
Problema Economie Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
/**
 ____ ____ ____ ____ ____
||d |||a |||r |||i |||u ||
||__|||__|||__|||__|||__||
|/__\|/__\|/__\|/__\|/__\|
///* economie * isi cere drepturile inapoi! dariusbandila17 de pe pbinfo/infoarena i-a furat prestigiul!
**/
#include <bits/stdc++.h>
using namespace std;
ifstream fin("economie.in");
ofstream fout("economie.out");
int f[50005],n,a[1005],s[1005];
vector<int> v;
void sortare(){sort(a+1,a+n+1);}
int main(){
    int ans=0;
    fin >> n;
    for(int i=1;i<=n;i++)fin>>a[i];
    int maxi=a[n];
    sortare();
    for(int i=1;i<=n;i++){
        if(f[a[i]]==0){
            s[++ans]=a[i];
            f[a[i]]=1;
            for(int j=1;j+a[i]<=maxi;j++){
                if(f[j])f[a[i]+j]=1;
            }
        }
    }
    fout << ans<< '\n';
    for(int i=1;i<=ans;i++)fout<<s[i]<< ' ';
}