Cod sursa(job #2527983)

Utilizator GeoDinBacauTofan George GeoDinBacau Data 21 ianuarie 2020 10:47:48
Problema Generare de permutari Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.13 kb

#include <iostream>

using namespace std;

int n,v[10];

void afis()
{
    for(int i=1;i<=n;i++)
        cout<<v[i]<<' ';
    cout<<endl;
}

bool verif(int k)
{
    for(int i=1;i<k;i++)
        if(v[i]==v[k])
            return false;
    return true;
}

void permutari(int k)
{
    int i;
    for(i=1;i<=n;i++){
        v[k]=i;
        if(verif(k)){
            if(k==n)
                afis();
            else
                permutari(k+1);
        }
    }
}

int main()
{
    cin>>n;
    permutari(1);
    return 0;
}

/*
#include <iostream>

using namespace std;

int n,K,v[10];

void afis()
{
    for(int i=1;i<=n;i++)
        cout<<v[i]<<' ';
    cout<<endl;
}

bool verif(int x)
{
    for(int i=1;i<K;i++)
        if(v[i]==x)
            return false;
    return true;
}

void combinari(int k)
{
    int i;
    for(i=1;i<=n;i++){
        K=k;
        if(verif(i)){
            v[k]=i;
            if(k==n)
                afis();
            else
                combinari(k+1);
        }
    }
}

int main()
{
    cin>>n;
    combinari(1);
    return 0;
}
*/