Cod sursa(job #3313206)

Utilizator DobraVictorDobra Victor Ioan DobraVictor Data 2 octombrie 2025 20:47:42
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <iostream>
#include <fstream>
#include <stdint.h>

const int32_t MAX_N = 8;

int32_t n;
int32_t vec[MAX_N];
bool used[MAX_N];

void Backtrack(int32_t ind, std::ostream& fout) {
	if(ind == n) {
		for(int32_t i = 0; i != n; ++i)
			fout << (vec[i] + 1) << ' ';
		fout << '\n';
	} else {
		for(int32_t i = 0; i != n; ++i) {
			if(used[i])
				continue;
			
			used[i] = true;
			vec[ind] = i;
			Backtrack(ind + 1, fout);
			used[i] = false;
		}
	}
}

int main() {
	std::ifstream fin("permutari.in");
	std::ofstream fout("permutari.out");
	
	fin >> n;
	Backtrack(0, fout);

	fin.close();
	fout.close();

	return 0;
}