Pagini recente » Diferente pentru problema/dijkstra intre reviziile 47 si 39 | Cod sursa (job #1123285) | Diferente pentru utilizator/luijika_programatorul intre reviziile 24 si 15 | Cod sursa (job #1294692) | Cod sursa (job #1758666)
#include <fstream>
using namespace std;
int n;
int st[10];
ifstream in("permutari.in");
ofstream out("permutari.out");
bool valid(int k) {
for (int i = 1; i < k; i++)
if (st[i] == st[k])
return false;
return true;
}
void printsol() {
for (int i = 1; i <= n; i++)
out << st[i] << " ";
out << "\n";
}
void back(int k) {
st[k] = 0;
while (st[k] < n) {
st[k]++;
if (valid(k))
if (k == n)
printsol();
else
back(k + 1);
}
}
int main() {
in >> n;
back(1);
return 0;
}