Cod sursa(job #2698711)
| Utilizator | Data | 22 ianuarie 2021 20:53:36 | |
|---|---|---|---|
| Problema | Generare de permutari | Scor | 80 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.66 kb |
#include <fstream>
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int x[9], n;
void Afis()
{
for (int j = 1; j <= n; j++)
fout << x[j] << " ";
fout << endl;
}
bool OK(int k) {
for (int i = 1; i < k; ++i)
if (x[k] == x[i])
return false;
return true;
}
bool Solutie(int k)
{
return k == n;
}
void back(int k) {
for (int i = 1; i <= n; ++i)
{
x[k] = i;
if (OK(k))
if (Solutie(k))
Afis();
else
back(k + 1);
}
}
int main() {
fin >> n;
back(1);
return 0;
}
