Back Principal
Back Principal
# include <stdlib.h>
using namespace std;
int as,ev,st[100],k,n;
//distincte
for(i=1;i<k&&ev;i++)
if(st[i]==st[k]) ev=0;
//suma partiala
s=0;
for(i=1;i<=k;i++)
s=s+st[k];
if(s>..conditie..) ev=0;
if(k==n) return 1;
else return 0;
}
void tipar(int k)
{
int i;
for(i=1;i<=k;i++)
cout<<st[i]<<" ";
cout<<endl;
}
void back()
{
k=1;
init(k,st);
while(k>0)
{
do {
succesor(k,st,as);
if (as) valid(k,st,ev);
if(as)
if(solutie(k)) tipar(k);
else {
k++;
init(k,st);
}
else k--;
}
}
int main ()
{
cout<<"n="; cin>>n;
back();
return 0;
}