Pagini recente » Cod sursa (job #240508) | Cod sursa (job #1915431) | Cod sursa (job #31739) | Cod sursa (job #2699367) | Cod sursa (job #319766)
Cod sursa(job #319766)
/*
* permutari.cpp
*
* Created on: Jun 1, 2009
* Author: stefan
*/
#include <iostream>
#include <cstdlib>
#include <cstdio>
using namespace std;
int stiva[8], n;
void afisare()
{
for(int i=0;i<n;++i) cout << stiva[i] << " ";
cout << endl;
}
bool valid(int k)
{
int nr[8];
memset(nr,0,sizeof(nr));
for(int i=0; i<=k; ++i)
if(nr[stiva[i]-1]) return false;
else ++nr[stiva[i]-1];
return true;
}
void back(int k)
{
if(k==n) afisare();
else
for(stiva[k]=1;stiva[k]<=n;++stiva[k])
if(valid(k)) back(k+1);
}
int main()
{
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
cin >> n;
back(0);
return 0;
}