Cod sursa(job #190193)
Utilizator | Data | 20 mai 2008 17:05:57 | |
---|---|---|---|
Problema | Generare de permutari | Scor | 60 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 1.15 kb |
#include<fstream>
using namespace std;
ifstream fin ("permutari.in");
ofstream fout ("permutari.out");
int main ()
{
int n,m,k,j,i,q,s;
fin>>n;
m=n;
int a[n];
for(i=1;i<=m;i++)
{
a[i]=i;
fout<<i<<" ";}
fout<<"\n";
while(s!=n*m)
{
a[m]++;
if(a[m]>n)
{k=m;
while(a[k]>n)
{
a[k]=1;
k--;
a[k]++;
}
}
q=0;
for(i=1;i<=m-1;i++)
{
for(k=i+1;k<=m;k++)
{
if(a[i]==a[k])
{q=1;
break;
}}}
if(q==0)
{
for(i=1;i<=m;i++)
fout<<a[i]<<" ";
fout<<"\n";
}
s=0;
for(i=1;i<=m;i++)
s+=a[i];
}
return 0;
}