Cod sursa(job #2110375)
| Utilizator | Data | 20 ianuarie 2018 16:30:18 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
using namespace std;
ifstream fi("perm.in");
ofstream fo("perm.out");
int n,k,nr;
int a[1001],fr[10];
void backtracking(int i)
{
if(i==n+1)
{
for(int j=1;j<=n;j++)
fo<<a[j]<<" ";
fo<<endl;
}
else
for(int x=1;x<=n;x++)
{
if(fr[x]==0)
{a[i]=x;
fr[x]++;
backtracking(i+1);}
fr[a[i]]=0;
a[i]=0;
}
}
int main()
{
a[0]=0;
fi>>n;
backtracking(1);
}
