Cod sursa(job #1934153)

Utilizator 3DwArDPauliuc Edward 3DwArD Data 21 martie 2017 10:56:17
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <bits/stdc++.h>
#define Valmax 50002
using namespace std;
ifstream f("economie.in");
ofstream g("economie.out");
int n,x,vmax=-1;
vector <int> v,ramase;
bitset <Valmax> b;
int main()
{
    f>>n;
    for(int i=0;i<n;i++){
        f>>x;
        v.push_back(x);
        if(x>vmax)vmax=x;
    }
    sort(v.begin(),v.end());
    for(int i=0;i<n;i++){
        if(b[v[i]]==false)ramase.push_back(v[i]);
        b[v[i]]=true;
        for(int j=1;j+v[i]<=vmax;j++){
            if(b[j]==true)b[j+v[i]]=true;
        }
    }
    g<<ramase.size()<<"\n";
    for(int i=0;i<ramase.size();i++)g<<ramase[i]<<"\n";
    return 0;
}