Cod sursa(job #1884902)
Utilizator | Data | 19 februarie 2017 14:16:15 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.59 kb |
#include <fstream>
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
const int N = 8;
int n, v[N];
bool ok(int k)
{
for(int i=0;i<k;++i)
if(v[i]==v[k])return false;
return true;
}
void bk(int k)
{
for(v[k]=1;v[k]<=n;++v[k])
{
if(ok(k))
{
if(k==n-1)
{
for(int i=0;i<=k;++i)
fout<<v[i]<<" ";
fout<<'\n';
}
else bk(k+1);
}
}
}
int main()
{
fin>>n;
bk(0);
return 0;
}