Pagini recente » Cod sursa (job #2788114) | Cod sursa (job #1092188) | Cod sursa (job #1807591) | Cod sursa (job #1850416) | Cod sursa (job #1489422)
#include <fstream>
#include <bitset>
using namespace std;
const int NMAX=9;
int sol[NMAX], n;
bitset<NMAX> vis;
ifstream in("permutari.in");
ofstream out("permutari.out");
void write()
{
for(int i=1; i<=n; i++)
out<<sol[i]<<' ';
out<<'\n';
}
void backtracking(int k=1)
{
if(k==n+1)write();
for(int i=1; i<=n; i++)
if(!vis[i])
{
sol[k]=i;
vis[i]=1;
backtracking(k+1);
vis[i]=0;
}
}
int main()
{
vis.reset();
in>>n;
backtracking();
return 0;
}