Cod sursa(job #2647883)

Utilizator akumariaPatrascanu Andra-Maria akumaria Data 7 septembrie 2020 00:40:44
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <cstdio>

using namespace std;

void backt(int curr, int n, int used[],int st[]) {
	if (curr == n+1) {
		for(int i=1; i<=n; ++i)
			printf("%d ", st[i]);
		printf("\n");
	}

	for(int i=1; i<=n; ++i)
		if (!used[i]) {
			used[i] = true;
			st[curr] = i;
			backt(curr+1, n, used, st);
			used[i] = false;
		}
}


int main() {
	freopen("permutari.in", "r", stdin);
	freopen("permutari.out", "w", stdout);

	int n;
	scanf("%d", &n);

	int used[n+1], st[n+1];

	for(int i=0; i<=n; ++i)
        used[i] = st[i] = 0;
    backt(1, n, used, st);

	return 0;
}