Cod sursa(job #723318)

Utilizator robertpoeRobert Poenaru robertpoe Data 25 martie 2012 12:37:47
Problema Economie Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("economie.in");
ofstream g("economie.out");
int i,j,n,nr,v[1001],a[1001],b[50001];
int main()
{
	f>>n;
	for(i=1;i<=n;++i)
		f>>a[i];
	b[0]=1;
	sort(a+1,a+n+1);
	for(i=1;i<=n;++i)
		if(b[a[i]]==0)
		{
			for(j=0;j+a[i]<=a[n];++j)
				if(b[j]!=0)
					b[j+a[i]]=1;
			for(j=1;j<=n;++j)
				if(b[j]!=1)
					break;
			++nr;
			v[nr]=a[i];
			if(j>n)
				break;
		}
		g<<nr<<'\n';
		for(j=1;j<=nr;++j)
			g<<v[j]<<'\n';
		return 0;
}