Pagini recente » Cod sursa (job #1210903) | Cod sursa (job #1904250) | Cod sursa (job #2259678) | Cod sursa (job #546461) | Cod sursa (job #197595)
Cod sursa(job #197595)
#include <iostream.h>
#include <conio.h>
int n,k,ev,as,s[100],a,b;
void init ()
{
s[k]=0;
}
int succesor ()
{
if (s[k]<n)
{
s[k]=s[k]+1;
return 1;
}
else return 0;
}
int valid (int a, int b)
{
for (int i=1; i<k; i++)
if (s[k]==s[i] || a!=1 || b<a || s[b]<s[a]) return 0;
return 1;
}
int solutie ()
{
return k==n;
}
void tipar ()
{
for (int i=1; i<=n; i++)
cout<<s[i]<<" ";
cout<<endl;
}
void bt (int a, int b)
{
k=1;
init();
while (k>0)
{
as=1; ev=0;
while (as && !ev)
{
as=succesor();
if (as) ev=valid(a,b);
}
if (as)
if (solutie()) tipar();
else {k++; init();}
else k--;
}
}
int main ()
{
clrscr();
cout<<"n="; cin>>n;
cout<<"a="; cin>>a;
cout<<"b="; cin>>b;
bt(a,b);
getch();
return 0.;
}