Pagini recente » Cod sursa (job #1078780) | Cod sursa (job #728801) | Cod sursa (job #1204221) | Cod sursa (job #2510677) | Cod sursa (job #1521100)
#include <fstream>
#include <cmath>
#include <algorithm>
using namespace std;
ifstream f("damesah.in");
ofstream g("damesah.out");
int x[20];
int n,nr;
void afisare()
{
int i;
if(nr==1)
{for(i=1;i<=n;i++)
g<<x[i]<<" ";
g<<'\n';}
}
int verif(int i)
{
int j;
for(j=1;j<=i-1;j++)
{
if(abs(x[j]-x[i])==i-j)
return 0;
if(x[j]==x[i])
return 0;
}
return 1;
}
int main()
{
int i;
f>>n;
i=1;
while(i>0 and nr<1)
{
x[i]++;
if(x[i]>n)
{
x[i]=0;
i--;
}
else
if(verif(i)==1)
if(i==n) {nr+=1;afisare();}
else
{
i++;
}
}
while(i>0)
{
x[i]++;
if(x[i]>n)
{
x[i]=0;
i--;
}
else
if(verif(i)==1)
if(i==n) {nr+=1;}
else
{
i++;
}
}
g<<nr;
f.close();
g.close();
return 0;
}