Pagini recente » Cod sursa (job #1245664) | Cod sursa (job #1433484) | Cod sursa (job #1034120) | Clasament 4_me | Cod sursa (job #2606)
Cod sursa(job #2606)
#include <stdio.h>
#include <stdlib.h>
#define dim 201
int abs1(int n)
{ if(n<0)
n*=-1;
return n;
}
void tipar();
int bun(int k,int val);
void back(int k);
int n,sol[dim];
int main()
{ freopen ("dame.in","r",stdin);
freopen ("dame.out","w",stdout);
scanf("%d",&n);
back(1);
fclose(stdin);fclose(stdout);
return 0;
}
void back(int k)
{ if (k==n+1)
{ tipar();
exit(0);
}
else
for(int val=1;val<=n;++val)
if(bun(k,val))
{ sol[k]=val;
back(k+1);
}
}
int bun(int k,int val)
{ for(int i=1;i<k;++i)
if(sol[i]==val||abs1(k-i)==abs1(val-sol[i]))
return 0;
return 1;
}
void tipar()
{ printf("%d\n",n);
for(int i=1;i<=n;++i)
for(int j=1;j<=n;++j)
if(j==sol[i])
printf("%d %d\n",i,j);
}