Pagini recente » Rating Virlan Cristian Alexandru (Virlan_Cristian) | Cod sursa (job #2102144) | Cod sursa (job #714252) | Cod sursa (job #843506) | Cod sursa (job #2692530)
#include <iostream>
#include <vector>
#include <stdio.h>
using namespace std;
void permutari(int n, vector<int>& current, vector<int>& nums)
{
if (current.size() == n)
{
for (int i = 0; i < n; i++)
{
printf("%d ", current[i]);
}
cout << "\n";
}
for (int i = 0; i < nums.size(); i++)
{
int cur_num = nums[i];
current.push_back(cur_num);
nums.erase(nums.begin() + i);
permutari(n, current, nums);
current.pop_back();
nums.insert(nums.begin() + i, cur_num);
}
}
int main()
{
freopen("permutari.in", "r", stdin);
freopen("permutari.out", "w", stdout);
int n;
scanf("%d", &n);
int j = 0;
vector<int> current;
vector<int> nums;
for (int i = 0; i < n; i++)
{
nums.push_back(i + 1);
}
permutari(n, current, nums);
}