Pagini recente » Cod sursa (job #2678769) | Cod sursa (job #92343) | Cod sursa (job #2684941) | Cod sursa (job #2837879) | Cod sursa (job #2300569)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int n;
bool viz[9];
int x[9];
bool EsteOK(int k)
{
for (int i=1;i<k;i++)
if (x[k] == x[i])
return false;
return true;
}
void afiseaza()
{
for (int i=1;i<=n;i++)
fout << x[i] << " ";
fout << "\n";
}
void BackTracking(int k)
{
for (int i=1;i<=n;i++)
{
if (!viz[i])
{
viz[i] = true;
x[k] = i;
if (EsteOK(k))
if (k==n)
afiseaza();
else BackTracking(k+1);
viz[i] = false;
}
}
}
int main()
{
fin >> n;
BackTracking(1);
return 0;
}