Pagini recente » Cod sursa (job #2607315) | Cod sursa (job #2636139) | Cod sursa (job #1082977) | Cod sursa (job #2567603) | Cod sursa (job #1373665)
#include <fstream>
using namespace std;
const int kNMax = 10;
int n, vf, v[kNMax];
void Citire() {
ifstream in("permutari.in");
in >> n;
in.close();
}
void Backtracking() {
ofstream out("permutari.out");
int k = 1, i;
while (k > 0) {
do {
v[k]++;
vf = 1;
for (i = 1; i < k; ++i)
if(v[i] == v[k])
vf = 0;
} while (v[k] <= n && vf == 0);
if (v[k] <= n) {
if (k == n) {
for (i = 1; i <= n; ++i)
out << v[i] << ' ';
out << '\n';
} else
v[++k] = 0;
} else
k--;
}
out.close();
}
int main() {
Citire();
Backtracking();
return 0;
}