Cod sursa(job #2237178)

Utilizator gabrielxCojocaru Gabriel-Codrin gabrielx Data 31 august 2018 21:18:46
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.76 kb
#include <fstream>
#include <vector>
#include <string>
#include <map>
#include <unordered_map>
#include <queue>
#include <deque>
#include <cmath>
#include <algorithm>

using namespace std;

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

int N;

vector<int> currentPerm;
vector<bool> viz(10);

void perm() {
	if (currentPerm.size() == N) {
		for (int i = 0; i < N; ++i) {
			cout << currentPerm[i] << ' ';
		}

		cout << '\n';
		return;
	}

	for (int i = 1; i <= N; ++i) {
		if (!viz[i]) {
			viz[i] = true;
			currentPerm.push_back(i);

			perm();

			currentPerm.pop_back();
			viz[i] = false;
		}
	}
}

int main() {
	cin.sync_with_stdio(false);
	cout.sync_with_stdio(false);
	
	cin >> N;
	perm();
	
	return 0;
}