Cod sursa(job #1404510)

Utilizator BogdanVMVilculescu Mihai Bogdan BogdanVM Data 28 martie 2015 12:15:44
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <cstdio>
using namespace std;
int n,v[10];
bool valid(int k)
{
    for (int i = 1; i <= n; i++)
        if (v[i] == v[k] && i!=k) return false;
    return true;
}
void afis()
{
    for (int i = 1; i <= n; i++)
        printf("%d ",v[i]);
    printf("\n");
}
void BKTR(int k)
{
    if (k == n+1)
        afis();
    else{
        for (int i = 1; i <= n;i++)
        {
            v[k] = i;
            if (valid(k))
              BKTR(k+1);
            v[k] = 0;
        }
    }
}
int main()
{
    freopen("permutari.in","r",stdin);
    freopen("permutari.out","w",stdout);
    scanf("%d\n",&n);
    BKTR(1);
}