2014年3月14日
摘要: 一、问题描述 题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1002 n*n的地图,'.'表示空地,'X'表示墙,现在往地图上放置炮塔,要求两两炮塔不能同行同列(除非之间有墙),给定一种地图,问这个地图最多可以放置多少个炮塔? 二、与八皇后问题进行比较 与八皇后不同的时,八皇后问题每行放一个皇后,且最多放一个。而该问题,每行可以放多个炮塔,取决于墙的位置。 不过,除了上面的不同点之外,这个问题与八皇后十分像。 八皇后问题中,我采用逐行扫描,逐... 阅读全文
posted @ 2014-03-14 11:30 Oloo 阅读(741) 评论(0) 推荐(0)
  2014年3月13日
摘要: 一、问题描述 在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。 二、回溯法一句话概括 从一条路往前走,能进则进,不能进则退回来,换一条路再试。 三、八皇后问题分析 首先注意到每一行都要放置一个皇后,所以数据表示可以使用一个数组S,S[i]表示第i行第S[i]列放置了皇后。 回溯的前进条件:在i行,找到一个位置可以放置皇后,则开始为第i+1行找寻可以放置皇后的位置。 返回的情形:1、进行到第i行,但没有找到可以放置皇后的位置,那么跳回第i-1行,修改该行的皇后位置... 阅读全文
posted @ 2014-03-13 23:43 Oloo 阅读(134) 评论(0) 推荐(0)