Cod sursa(job #558296)

Utilizator Tucu94Andrei Tuculanu Tucu94 Data 17 martie 2011 10:44:40
Problema Economie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
using namespace std;
int m,i,j,n,v[1000],x[1000],b[1000],a[1000],k,l,ok;

ifstream f ("economie.in");
ofstream g ("economie.out");
int main (){
	
	f>>n;
	for(i=1;i<=n;i++)
	{
		f>>v[i];
		if(v[i]>m)
			m=v[i];
	}
	sort(v+1,v+n+1);
	for(i=1;i<=m;i++)
		b[i]=99999999;
	for(i=1;i<=n;i++)
		b[v[i]]=1;
				
	a[0]=1;
	for(i=1;i<=n;i++)
	{
		for(j=0;j<=m;j++)
			if(a[j])
				a[j+v[i]]=1;
		for(j=1;j<=n;j++)
			if(b[i]>=a[i])	
				ok=1;
			else
				ok=0;
			if(ok){
				for(l=i;l>=1;l--)
					x[++k]=l;
				break;
			}
	}

	g<<k<<"\n";
	for(i=1;i<=k;i++)
		g<<x[i]<<"\n";










return 0;
}