Pagini recente » Cod sursa (job #3240954) | Cod sursa (job #1191347) | Cod sursa (job #2545226) | Cod sursa (job #2265889) | Cod sursa (job #2227610)
#include <bits/stdc++.h>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int n,i,j,p[10];
bool urmatoarea_permutare();
int main()
{
f>>n;
for(i=1;i<=n;i++)
p[i]=i;
do
{
for(i=1;i<=n;i++)
g<<p[i]<<' ';
g<<'\n';
}
while(urmatoarea_permutare());
return 0;
}
bool urmatoarea_permutare()
{
for(i=n;i>1&&(p[i]<p[i-1]);i--);
if(i==1)
return false;
for(j=n;p[j]<p[i-1];j--);
swap(p[i-1],p[j]);
for(j=n;i<j;i++,j--)
swap(p[i],p[j]);
return true;
}