Pagini recente » Cod sursa (job #918281) | Cod sursa (job #1703068) | Cod sursa (job #2440398) | Cod sursa (job #1211760) | Cod sursa (job #1202691)
#include<fstream>
using namespace std;
ifstream f("damesah.in"); ofstream g("damesah.out");
int n,nr,k,x[15];
void afis()
{ nr++;
if(nr==1) {for(int i=1;i<=n;i++) g<<x[i]<<" "; g<<"\n";}
}
int cont(int k)
{ int i,d;
for(i=1;i<k;i++)
{ if(x[i]==x[k]) return 0;
if(x[i]<x[k]) d=x[k]-x[i]; else d=x[i]-x[k];
if(k-i==d) return 0;
}
return 1;
}
void back()
{ k=1; x[k]=0;
do
{ while(x[k]<n)
{ x[k]++;
if(cont(k))
if(k==n) afis(); else x[++k]=0;
}
k--;
}
while(k);
}
int main()
{ f>>n;
back();
g<<nr<<"\n"; g.close(); return 0;
}