Pagini recente » Statistici Maxim Sabin (sabinm) | Cod sursa (job #2363664) | Cod sursa (job #3178743) | Cod sursa (job #543129) | Cod sursa (job #1356069)
#include <iostream>
#include <fstream>
using namespace std;
int n,sol[9],a[100];
ifstream f("permutari.in");
ofstream g("permutari.out");
bool OK(int k)
{
for (int i=1; i<k; i++) if (sol[i]==sol[k]) return false;
return true;
}
void afisare()
{
for (int i=1; i<=n; i++) g<<sol[i]<<' ';
g<<'\n';
}
void backtrack(int k)
{
int i;
if (k>n) afisare();
else for (i=1; i<=n; i++)
{
sol[k]=i;
if (OK(k)) backtrack(k+1);
}
}
int main()
{
f>>n;
backtrack(1);
return 0;
}