Cod sursa(job #1382269)

Utilizator mariusadamMarius Adam mariusadam Data 8 martie 2015 18:56:46
Problema Generare de permutari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.78 kb
#include <fstream>

using namespace std;

ifstream r("permutari.in");
ofstream w("permutari.out");

int x[9]
int n;

bool cont(int k) {
    int i;

    for (i=1; i<=k-1; i++)
        if (x[i]==x[k])
            return false;

    return true;
}

void afis(int k) {
    int i;
    for (i=1; i<=k; i++)
        w<<x[i]<<" ";
    w<<"\n";
}

void bkt() {
    int k;
    k=1;
    x[k]=0;
    while (k>0) {
        if (x[k]<n) {
            x[k]++;
            if (cont(k))
                if (k==n)
                    afis(k);
                else {
                    k++;
                    x[k]=0;
                }
        }
        else
            k--;
    }
}

int main() {
    r>>n;
    bkt();
    r.close();
    w.close();
    return 0;
}