Cod sursa(job #1605190)

Utilizator TeodorCotetCotet Teodor TeodorCotet Data 18 februarie 2016 20:19:24
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("permutari.in");
ofstream fout("permutari.out");

const int NMAX = 8;

int n; 

bitset<NMAX + 1> vis;

int v[NMAX + 1];

int backtrack(int k) {

	if(k == n + 1) {
		for(int i = 1; i <= n; ++i)
			fout << v[i] << ' ' ;
		fout << '\n'; 
	} else {

		for(int i = 1; i <= n; ++i)
			if(vis[i] == false) {

				vis[i] = true;
				v[k] = i;
				backtrack(k + 1);
				vis[i] = false; 
			}
	}
}

int main() {

	fin >> n; 

	backtrack(1);

	return 0;
}