Cod sursa(job #711835)
Utilizator | Data | 12 martie 2012 20:20:08 | |
---|---|---|---|
Problema | Economie | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.38 kb |
#include <fstream>
using namespace std;
ifstream f("economie.in"); ofstream g("economie.out");
int dp[50000], r[1000];
int t, i, j, n, x;
int main(){
f>>n;
for (i=1; i<=n; i++){
f>>x;
if (dp[x]==0) {
t++;
r[t]=x;
for (j=0; j+x<=50000; j++){
if (dp[j]==1 || j==0) dp[j+x]=1;
}
}
}
g<<t<<"\n";
for (i=1; i<=t; i++) g<<r[i]<<"\n";
}