Cod sursa(job #2638915)

Utilizator llama27Asd asd llama27 Data 30 iulie 2020 15:16:13
Problema Generare de permutari Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>
#include <iostream>
#include <algorithm>
#include <vector>
#include <iterator>
#include <queue>
#include <cmath>
#include <string>
#include <set>
using namespace std;

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

int sol[10], n;


bool OK(int pos)
{
	for (int i = 1; i < pos; i++)
		if (sol[i] == sol[pos])
			return false;
	return true;
}

void print()
{
	for (int i = 1; i <= n; i++)
		out << sol[i] << ' ';
	out << '\n';
}

void bkt(int pos)
{
	if (pos == n + 1)
	{
		print();
	}
	else
	{
		for (int i = 1; i <= n; i++)
		{
			sol[pos] = i;
			if (OK(pos))
				bkt(pos + 1);
		}
	}
}

int main()
{
	in >> n;
	bkt(1);
}