Pagini recente » Cod sursa (job #1213422) | Cod sursa (job #2690998) | Cod sursa (job #2260108) | Cod sursa (job #2755822) | Cod sursa (job #2638499)
#include <iostream>
#include <fstream>
#include <vector>
#include <bitset>
using namespace std;
const int N = 8;
ifstream fin ( "permutari.in" );
ofstream fout ( "permutari.out" );
bitset <N+5> visited ( false );
vector <int> perm;
int n;
void print_perm () {
for ( int i = 0; i < (int)perm.size (); i ++ )
fout << perm[i] << ' ';
fout << '\n';
}
void generate_perm () {
if ( (int)perm.size () == n )
print_perm ();
else {
for ( int i = 1; i <= n; i ++ )
if ( !visited[i] ) {
visited[i] = true;
perm.push_back ( i );
generate_perm ();
visited[perm.back()] = false;
perm.pop_back();
}
}
}
int main()
{
fin >> n;
generate_perm ();
return 0;
}