Cod sursa(job #2924850)

Utilizator coso2312Cosmin Bucur coso2312 Data 12 octombrie 2022 11:55:14
Problema Generare de permutari Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include <iostream>
#include <fstream>
using namespace std;

int n, fol[26], sir[11];

void gen(int lg, int sir[11]) {
  if (lg == n + 1) {
    for (int i = 1; i <= n; ++i) {
      fout << sir[i];
    }
    fout << "\n";
    return;
  }
  for (int c = 1; c < 1 + n; ++c) {
    if (fol[c - 1] == 0) {
      sir[lg] = c;
      fol[c - 1] = 1;
      gen(lg + 1, sir);
      fol[c - 1] = 0;
      // La intoarcerea din recursivitate este important sa marcam ca nu mai
      // folosim litera curenta
    }
  }
}

int main() {
    ifstream fin("permutari.in");
    ofstream fout("permutari.out");
    fin >> n;
    gen(1, sir);
    return 0;
}