Cod sursa(job #1320028)
Utilizator | Data | 17 ianuarie 2015 15:34:31 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.66 kb |
#include <fstream>
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int n;
int x[9];
bool s[9];
void Back(int k);
void Write();
int main()
{
fin >> n;
Back(1);
fin.close();
fout.close();
return 0;
}
void Back(int k)
{
if ( k > n )
{
Write();
return;
}
for ( int i = 1; i <= n; ++i )
{
x[k] = i;
if ( !s[i] )
{
s[i] = true;
Back(k + 1);
s[i] = false;
}
}
}
void Write()
{
for ( int i = 1; i <= n; ++i )
fout << x[i] << ' ';
fout << '\n';
}