Cod sursa(job #3355222)

Utilizator Cata20Draghici Catalina Cata20 Data 22 mai 2026 08:53:37
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>

using namespace std;

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

void printSol(vector<int>& sol) {
	for (int i = 0; i < sol.size(); i++)
		fout << sol[i] << " ";
	fout << '\n';
}

void bt(int step, int n, vector<int>& sol, vector<bool>& viz) {
	if (step == n) {
		printSol(sol);
	}

	for (int i = 1; i <= n; i++) {
		if (!viz[i]) {
			viz[i] = true;
			sol.push_back(i);
			bt(step + 1, n, sol, viz);
			sol.pop_back();
			viz[i] = false;
		}
	}
}

int main() {
	int n;
	fin >> n;
	vector<int> sol;
	vector<bool> viz(n, 0);
	bt(0, n, sol, viz);
	return 0;
}