Cod sursa(job #2762982)

Utilizator Teodor_AxinteAxinte Teodor-Ionut Teodor_Axinte Data 10 iulie 2021 19:14:09
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.8 kb
#include <fstream>
#include <iostream>

using namespace std;

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

int n,x[10],viz[10];
void bkt(int);

int main()
{
    fin>>n;
    bkt(1);
    return 0;
}

int verifica(int p)
{
    int v[11]={0,0,0,0,0,0,0,0,0,0};
    for(int i=1;i<=p;i++)
        v[x[i]]++;

    for(int i=1;i<=8;i++)
        cout<<"i: "<<i<<"  "<<"v[i]: "<<v[i]<<endl;

    for(int i=1;i<=n;i++)
        if(v[i]!=1)
            return 0;
    if(p!=n)
        return 0;
    return 1;

}


void bkt(int p)
{
    if(p==n+1)
    {
        for(int i=1;i<=p-1;i++)
            fout<<x[i]<<" ";
        fout<<"\n";
        return;
    }
    for(int i=1;i<=n;i++)
    {
        x[p]=i;
        viz[x[p]]++;
        if(viz[x[p]]>1)
            continue;
        bkt(p+1);
        viz[x[p]]=0;
    }
}