Cod sursa(job #2608619)

Utilizator Tudor_PascaTudor Pasca Tudor_Pasca Data 1 mai 2020 16:13:06
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.81 kb
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

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

int n;
int v[100];

bool valid(int x)
{
    for(int i = 1; i < x; i++)
        if(v[i] == v[x])
            return false;

    return true;
}

void print()
{
    for(int i = 0; i < n; i++)
        out << v[i] << ' ';

    out << '\n';
}

void combi(int x)
{
    for(v[x] = 1; v[x] <= n; v[x]++)
    {
        if(valid(x))
        {
            if(x == n)
                print();
            else
                combi(x+1);
        }
    }
}

int main()
{
    in >> n;

    //combi(1);

    for(int i = 0; i < n; i++)
        v[i] = i + 1;

    do
    {
        print();

    }while(next_permutation(v, v + n));

    return 0;
}