Cod sursa(job #3295876)

Utilizator LucaMirsolea14Luca Mirsolea LucaMirsolea14 Data 9 mai 2025 11:37:22
Problema Economie Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<bits/stdc++.h>
using namespace std;
ifstream fin("economie.in");
ofstream fout("economie.out");

int n,v[1002], maxi;
vector<int> sub;
bitset<500001> fr;

void Solve(){
int i;
for(i=1;i<=n;i++){
    if(!fr[v[i]]){
        for(auto e : sub)
        if(fr[v[i]-e]){
            fr[i] = 1;
            break;
        }
        if(!fr[v[i]]){
            fr[v[i]]=1;
            sub.push_back(v[i]);
            for(int j=1;v[i]*j<=maxi;j++)
                fr[v[i]*j]=1;
        }
    }

}
fout<<sub.size()<<'\n';
for(auto e : sub)
    fout<<e<< " ";
}

int main(){

    int i;
    fin>>n;
    for(i=1;i<=n;i++){
        fin>>v[i];
        maxi=max(maxi,v[i]);
    }
    sort(v+1,v+n+1);

    Solve();

}