Cod sursa(job #2420184)

Utilizator lunapatsPalade Catalin-Iulian lunapats Data 10 mai 2019 22:45:15
Problema Generare de permutari Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <vector>
using namespace std;
int N;
vector<vector<int> > result;
vector<int> aranjament;
bool check(int elements) {
	for (int i = 0; i < elements; ++i) {
		if (aranjament[i] == aranjament[elements]) {
			return false;
		}
	}
	return true;
}
void back(int elements) {
	if (elements < N) {
		for (int i = 1; i <= N; ++i) {
			aranjament[elements] = i;
			if (check(elements)) {
				back(elements + 1);
			}
		}
	}   
	else {
		result.push_back(aranjament);
	} 	
}
int main() {
    cin >> N;
    aranjament.resize(N);
    back(0);
    for (int i = 0; i < result.size(); i++) {
		for (int j = 0; j < result[i].size(); j++) {
    		cout << result[i][j] << " ";
            flush(cout);
    	}
        cout << endl;
        flush(cout);
	}
}