Cod sursa(job #2339148)
Utilizator | Data | 8 februarie 2019 15:03:05 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 80 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.61 kb |
#include <iostream>
#include <fstream>
using namespace std;
int st[8],n;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int valid(int k){
for(int i=1;i<k;i++)
if(st[k]==st[i])
return 0;
return 1;
}
void tipar()
{
for(int i=1;i<=n;i++)
fout<<st[i]<<" ";
fout<<endl;
}
int solutie(int k)
{return (k==n);}
void back(int k)
{
for(int i=1;i<=n;i++)
{
st[k]=i;
if(valid(k))
{
if(solutie(k))
tipar();
else
back(k+1);
}}}
int main() {
fin>>n;
back(1);
return 0;
}