Pagini recente » Cod sursa (job #2695724) | Cod sursa (job #661608) | Cod sursa (job #1840739) | Cod sursa (job #2797885) | Cod sursa (job #2430240)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
vector <int> v;
int n;
int verifica(int k)
{
int ok=1, i=0;
while (ok&&i<v.size())
{
if (v[i]==k)
ok=0;
i++;
}
if (ok)
return 1;
return 0;
}
int main()
{
ifstream f ("permutari.in");
ofstream g ("permutari.out");
f>>n;
v.push_back(1);
int l=1;
int next=1;
while (l!=-1)
{
while ((!verifica(next))&&(next<=n))
next++;
if (next<=n)
{
v.push_back(next);
l++;
next=1;
} else
{
next=v[l-1]+1;
v.pop_back();
l--;
}
if (l==n)
{
for (int i=0; i<v.size(); i++)
g<<v[i]<<" ";
g<<"\n";
next=v[n-1]+1;
v.pop_back();
l--;
}
}
return 0;
}