Cod sursa(job #3365639)

Utilizator NutaAlexandruASN49K NutaAlexandru Data 22 septembrie 2026 21:36:50
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <bits/stdc++.h>
const int N_MAX = 8;
std::bitset<N_MAX> taken;
int n;
int v[N_MAX];

void bkt(int poz)
{
    if (poz == -1) {
        for (int i = n - 1; i >= 0; i--) {
            std::cout << v[i] + 1 << ' ';
        }
        std::cout << '\n';
        return;
    }
    for (int i = 0; i < n; i++) {
        if (!taken[i]) {
            taken[i] = true;
            v[poz] = i;
            bkt(poz - 1);
            taken[i] = false;
        }
    }
}
void solve()
{
    std::cin >> n;
    bkt(n - 1);
}
signed main(void)
{
    freopen("permutari.in", "r", stdin);
    freopen("permutari.out", "w", stdout);
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);

    int tt = 1;
    while (tt--) {
        solve();
    }
}