Pagini recente » Cod sursa (job #2602197) | Cod sursa (job #2480023) | Cod sursa (job #2826977) | Cod sursa (job #49394) | Cod sursa (job #317400)
Cod sursa(job #317400)
#include<fstream>
using namespace std;
fstream f("permutari.in",ios::in),g("permutari.out",ios::out);
int st[100],n,k;
void tipar(){for(int i=1;i<=k;i++)g<<st[i]<<" ";g<<endl;}
void init(){st[k]=0;}
int am_succ(){if(st[k]<n){st[k]++;return 1;}return 0;}
int e_valid()
{
int i;
for(i=1;i<k;i++)
if(st[i]==st[k])return 0;
return 1;
}
int sol(){return k==n;}
void bkt()
{
int as;
k=1;init();
while(k>0)
{
do {} while( (as=am_succ()) && !e_valid() );
if(as)
{
if(sol())tipar();
else {k++;init();}
}
else k--;
}
}
int main()
{
f>>n;
f.close();
bkt();
g.close();
return 0;
}