Pagini recente » Cod sursa (job #202319) | Cod sursa (job #1116743) | Cod sursa (job #1296790) | Cod sursa (job #2266745) | Cod sursa (job #394037)
Cod sursa(job #394037)
#include<fstream>
using namespace std;
int sol[10],n;
ifstream f("permutari.in");
ofstream o("permutari.out");
bool valid(int p)
{
for(int i=1 ; i<p ; ++i)
if(sol[i] == sol[p])
return false;
return true;
}
void afisare()
{
for (int i=1;i<=n;i++)
o<<sol[i]<<" ";
o<"\n";
}
void bkt(int p)//completeaza sol[p]
{
if(p==n+1)
{
afisare();
return;
}
for(int i=1 ; i<=n ; ++i)//parcurg val pe care le poate lua sol[p]
{
sol[p]=i;
if(valid(p))//daca sol[p] e compatibil cu sol[1],...,sol[p-1]
bkt(p+1);
}
}
int main()
{
f>>n;
bkt(1);
return 0;
}