Cod sursa(job #2174069)

Utilizator bonearaduBonea Radu bonearadu Data 16 martie 2018 10:38:19
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include <fstream>

std::ifstream f("permutari.in");
std::ofstream g("permutari.out");

void back(int k, int n, int P[10]) {
	bool ok;
	if (k == n) {
		for (int i = 1; i <= n; i++)
			g << P[i] << ' ';
		g << '\n';
	}
	else {
		for (int i = 1; i <= n; i++) {
			ok = true;
			for (int j = 1; j <= k; j++)
				if (P[j] == i) {
					ok = false;
					break;
				}
			if (ok) {
				P[k + 1] = i;
				back(k + 1, n, P);
			}
		}
	}
}

int main() {
	int n, P[10] = { 0 };
	f >> n;
	back(0, n, P);
	f.close();
	g.close();
    return 0;
}