Pagini recente » Cod sursa (job #330626) | Cod sursa (job #1185373) | Cod sursa (job #2309998) | Cod sursa (job #2613951) | Cod sursa (job #2979054)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("permutari.in");
ofstream fout("permutari.out");
int v[12];
void afisare(int n){
for(int i = 1; i <= n; i++){
fout << v[i] << " ";
}
fout << "\n";
}
int main()
{
int n;
fin >> n;
for(int i = 1; i <= n; i++){
v[i] = i;
}
int j;
int ok = 0;
do{
afisare(n);
ok = 0;
for(int i = n; i >= 2; i--){
if(v[i-1] < v[i]){
ok = i;
break;
}
}
if(ok != 0){
for(int i = n; i >= ok; i--){
if(v[ok-1] < v[i]){
j = i;
break;
}
}
int aux = v[ok-1];
v[ok-1] = v[j];
v[j] = aux;
int k = ok;
int l = n;
while(k < l){
aux = v[k];
v[k] = v[l];
v[l] = aux;
k++;
l--;
}
}
}while(ok != 0);
return 0;
}