Pagini recente » Cod sursa (job #675880) | Cod sursa (job #1483162) | Cod sursa (job #158386) | Cod sursa (job #863985) | Cod sursa (job #2079750)
#include <fstream>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int N;
void next_perm(int a[])
{
int i=N;
while (a[i-1]>a[i] && i>1)
--i;
--i;
if (!i)
return;
int j=i+1;
while (a[j]>a[i] && j<=N)
j++;
--j;
swap(a[i], a[j]);
++i;
j=N;
while (i<j)
{
swap(a[i], a[j]);
i++;
j--;
}
for (int i=1;i<=N;i++)
g<<a[i]<<' ';
g<<'\n';
next_perm(a);
}
int main()
{
f>>N;
int p[N+1];
for (int i=1;i<=N;i++)
{
g<<i<<' ';
p[i]=i;
}
g<<'\n';
next_perm(p);
}