Cod sursa(job #1742019)

Utilizator delia_ioanaCeapa Delia Ioana delia_ioana Data 15 august 2016 17:50:55
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <cmath>
#include <set>
 
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
 
int n, vect[10];
set<int> S;

void print() {
    for (int i = 0; i < n; i ++)
        fout << vect[i] << " ";
}
 
void back(int k) {
    if (k == n) {
        print();
        fout << endl;
        return;
    }
    else
        for (std::set<int>::iterator it = S.begin(); it != S.end(); it++) {
	    int val = *it;
	    vect[k] = val;
	    S.erase(it);
	    back(k + 1);
	    S.insert(val);
        }
}
 
int main() {
    fin >> n; 
    for (int i = 1; i <= n; i++)
	S.insert(i);
    back(0);
    return 0;
}