Cod sursa(job #270635)

Utilizator lucianvnDragomir Lucian lucianvn Data 4 martie 2009 12:23:14
Problema Semne Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream.h>
ifstream f ("semne.in");
ofstream g ("semne.out");
long int n,s,sol[5000],v[50001],suma=0;
int terminat;
void afiseaza()
	{
	 if(suma==s){terminat=1;
	 for(int i=1;i<=n;i++) {if(sol[i]==0) g<<"-";
	 else g<<"+";}  }
   }
void back(int k)
	{
	if(k==n+1) afiseaza();
      else
	  if(terminat==0){
		for(int i=0;i<=1;i++)
		      {	sol[k]=i;
			if(sol[k]==0) suma-=v[k];
			else suma+=v[k];
			back(k+1);
			if(sol[k]==0) suma+=v[k];
			else suma-=v[k];  }



		}
   }
int main()
	{
	f>>n;
      f>>s;
      for(int i=1;i<=n;i++)
	{
		f>>v[i];
	 }     terminat=0;
	 back(1);
		return 0;
   }