Cod sursa(job #1678923)

Utilizator andreeammAndreea Musat andreeamm Data 7 aprilie 2016 16:27:14
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.61 kb
#include <fstream>
#include <iostream>
#include <vector>
using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
int n;

bool isValid(std::vector<int> sol, int x) {
	for (int i = 0; i < sol.size(); i++)
		if (sol[i] == x)
			return false;
	return true;
}
void bt(std::vector<int>& crt_sol) {
	if (crt_sol.size() == n) {
		for (int i = 0; i < n; i++)
			out << crt_sol[i] << " ";
		out << "\n";
	}
	for (int i = 1; i <= n; i++) {
		if (isValid(crt_sol, i)) {
			crt_sol.push_back(i);
			bt(crt_sol);
			crt_sol.pop_back();
		}
	}
}
int main () {

	in >> n;
	in.close();
	std::vector<int> sol;
	bt(sol);
}