Pagini recente » Cod sursa (job #2810777) | Cod sursa (job #1873999) | Cod sursa (job #2760529) | Cod sursa (job #3147116) | Cod sursa (job #1118092)
#include<cstdio>
#include<algorithm>
using namespace std;
int Solution,NumberSolution,V[100],n,i,up,down,fact=1,ok,j;
int main()
{
freopen("damesah.in","r",stdin);
freopen("damesah.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++){V[i]=i;fact*=i;}
for(;fact;fact--)
{
ok=1;
for(i=2;i<=n && ok;i++)
{
up=down=V[i];
for(j=i-1;j>=1 && ok;j--)
{
up--;down++;
if(V[j]==up || V[j]==down){ok=0;break;}
}
}
NumberSolution+=ok;
if(ok && !Solution)
{
Solution=1;
for(i=1;i<=n;i++)printf("%d ",V[i]);
}
next_permutation(V+1,V+n+1);
}
printf("\n%d",NumberSolution);
return 0;
}