Cod sursa(job #884091)
| Utilizator | Data | 20 februarie 2013 17:32:38 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.78 kb |
#include<iostream>
using namespace std;
int st[100],i,j,n;
void afisare(int p)
{
int i;
for (i=1; i<=n; i++)
cout<<st[i]<<" ";
cout<<endl;}
int valid(int p)
{
for(i=1;i<=p-1;i++)
if (st[i]==st[p])
return 0;
return 1;
}
void back(int p)
{
int pval;
for(pval=1;pval<=n;pval++)
{
st[p]=pval;
if (valid(p))
if(p==n)
afisare(p);
else
back(p+1);
}
}
int main()
{
cin>>n;
back(1);
system ("pause");
return 0;
}
