版权声明:本文为博主原创文章转载时请标明原创地址。 /C/article/details/
检查一个如下的6 x 6的跳棋棋盘有六个棋子被放置在棋盘上,使得每行、每列只有一个每条对角线(包括两条主對角线的所有对角线)上至多有一个棋子。
上面的布局可以用序列2 4 6 1 3 5来描述第i个数字表示在第i行的相应位置有一个棋子,如下:
这只是跳棋放置的一个解
请编一个程序找出所有跳棋放置的解。并把它们以上面的序列方法输出
解按字典顺序排列。请输出前3个解
最后一行是解的总个数。
特别注意:对于更大的N(棋盘大小N x N)你的程序应当改进得更有效否则将严重超时。
前三行为前三个解每个解的两个数字之间鼡一个空格隔开。
第四行只有一个数字表示解的总数。
这道题实质上就是n皇后的变种特别简单。