Pagini recente » Cod sursa (job #572598) | Cod sursa (job #411728) | Cod sursa (job #394631) | Cod sursa (job #2167687) | Cod sursa (job #2227665)
#include <fstream>
using namespace std;
ifstream inputfile("permutari.in");
ofstream outputfile("permutari.out");
int values[11], solution[11], index1, number, currentValue;
void print()
{
for (index1 = 1; index1 <= number; index1++)
outputfile << solution[index1] << " ";
outputfile << "\n";
}
// functie pentru a verifica conditia de continuare
bool check(int currentValue)
{
for (index1 = 1; index1 < currentValue; index1++)
if ( solution[index1] == solution[currentValue] ) return false;
return true;
}
// functia pentru generarea permutarilor
void back(int currentValue)
{
int index1;
if (currentValue > number) print();
else
for (index1 =1; index1 <= number; index1++)
{
solution[currentValue] = index1;
if (check(currentValue)) back(currentValue + 1);
}
}
int main() {
inputfile >> number;
back(1);
return 0;
}