Pagini recente » Cod sursa (job #1062445) | Cod sursa (job #1033012) | Cod sursa (job #523825) | Cod sursa (job #140447) | Cod sursa (job #1029269)
# include <fstream>
using namespace std;
int x[17],k,n,cn,NrElem;
ifstream fin("submultimi.in");
ofstream fout("submultimi.out");
void Tipar()
{
for( int i = 1 ; i <= NrElem ; ++i )
fout << x[i] << ' ';
fout << '\n';
}
bool Valid()
{
if( k > 1 && x[k-1] >= x[k] )
return false;
return true;
}
bool Sol()
{
if( k == NrElem )
{
return true;
}
return false;
}
void BKT()
{
k = 1;
x[k] = 0;
while( k )
if( x[k] < n )
{
++x[k];
if( Valid() )
{
if( Sol() )
Tipar();
else
{
++k;
x[k] = 0;
}
}
} else --k;
}
int main()
{
fin >> n;
for( NrElem = 1 ; NrElem <= n ; ++NrElem )
BKT();
fin.close();
fout.close();
return 0;
}