Cod sursa(job #460851)

Utilizator AndreiRSStatescu Andrei Rares AndreiRS Data 4 iunie 2010 11:55:47
Problema Combinari Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include <stdio.h>
#define DIMBACK 1<<5

int X[DIMBACK], viz[DIMBACK];
int N;

void back (int k){
	int i;
	
	if (k - 1 == N){
		for (i=1; i<=N; i++)
			printf ("%d ", X[i]);
		printf ("\n");
		return;
	}
	
	for (i=1; i<=N; i++)
		if (!viz[i]){
			X[k] = i;
			viz[i] = 1;
			back (k + 1);
			viz[i] = 0;
		}
}

int main (){
	
	freopen ("permutari.in", "r", stdin);
	freopen ("permutari.out", "w", stdout);
	
	scanf ("%d", &N);

	back (1);
	
	return 0;
}