Cod sursa(job #1125646)

Utilizator DanielRusuDaniel Rusu DanielRusu Data 26 februarie 2014 18:50:50
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
// Generare de permutari --> Arhiva educationala

#include <fstream>

using namespace std;

ifstream fin("permutari.in");
ofstream fout("permutari.out");

int sol[10], i, pos, n, freq[10];

void bk(int pos);

int main() {
    fin >> n;

    bk(1);

    fin.close();
    fout.close();

    return 0;
}

void bk(int pos) {
    int i;

    if(pos == n + 1) {
        for(i = 1;i <= n;i++) {
            fout << sol[i] << ' ';
        }
        fout << '\n';
    }
    else {
        for(i = 1;i <= n;i++) {
            if(freq[i] == 0) {
                sol[pos] = i;
                freq[i] = 1;
                bk(pos + 1);
                freq[i] = 0;
            }
        }
    }
}