Pagini recente » Cod sursa (job #2367501) | Cod sursa (job #3228528) | Cod sursa (job #1106391) | Cod sursa (job #838573) | Cod sursa (job #2038379)
#include <iostream>
int n,st[100],k;
using namespace std;
int valid (int k)
{
int i;
for(i=0; i<k; i++)
{
if(st[k]==st[i])
return 0;
}
return 1;
}
int tipar(int k)
{
int i;
for(i=0; i<=k; i++)
cout<<st[i]<<" ";
cout<<endl;
}
int sol (int k)
{
return k==n-1;
}
int exist(int k)
{
return st[k]<n;
}
void backs(int n)
{
int k;
k=0;
while(k>=0)
{
if(exist(k))
{
st[k]++;
if(valid(k))
{
if(sol(k))
tipar(k);
else
{
k++;
st[k]=0;
}
}
}
else
k--;
}
}
int main()
{
cin>>n;
backs(n);
return 0;
}