Pagini recente » Cod sursa (job #1465928) | Cod sursa (job #615934) | Cod sursa (job #2894652) | Cod sursa (job #705913) | Cod sursa (job #1331635)
#include <cstdio>
using namespace std;
FILE *in, *out;
const int /*MAX_K = 5, */MAX_N = 8;//9;
int n;//, i,nr, k;
int /*a[MAX_K+1], */sol[MAX_N+1];
void afis()
{
for(int j = 1; j <= n; j++)
fprintf(out, "%d ", sol[j]);
fprintf(out, "\n");
}
bool valid(int p)
{
for(int j = 1; j < p; j++)
if(sol[j] == sol[p]) return false;
return true;
}
void bkt(int p)
{
if(p-1 == n)
{
/* if(i > k) return;
nr++;
if(a[i] == nr)
{*/
afis();
// i++;
//}
} else {
for(int j = 1; j <= n; j++)
{
//if(i > k) return;
sol[p] = j;
if(valid(p))
bkt(p+1);
}
}
}
int main()
{
in = fopen("permutari.in","r");
out = fopen("permutari.out","w");
fscanf(in, "%d", &n);
/*for(i = 1; i <= k; i++)
{
fscanf(in, "%d", &a[i]);
}*/
//i = 1;
bkt(1);
fclose(in);
fclose(out);
return 0;
}