搜索题目.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
搜索题目

第一节 深度优先搜索 【上机练习】 1、传教士(Bishop) 【问题描述】 某王国的疆土恰好是一个矩形,为了管理方便,国王将整个疆土划分成n×m块大小相同的区域。由于国王非常信教,因此他希望他的子民也能信教爱教,所以他想安排一些传教士到全国各地去传教。但这些传教士的传教形式非常怪异,他们只在自己据点周围特定的区域内传教且领地意识极其强烈(即任意一个传教士的据点都不能在其他传教士的传教区域内,否则就会发生冲突)。现在我们知道传教士的传教区域为以其据点为中心的两条斜对角线上(如图)。现在国王请你帮忙找出一个合理的安置方案,使得可以在全国范围内安置尽可能多的传教士而又不至于任意两个传教士会发出冲突。 (若A为某传教士的据点,则其传教范围为所有标有x的格子。为不产生冲突,则第二个传教士的据点只能放在上图的空格子中。) 【输入数据】 输入文件共一行,包含两个正整数n和m(1≤n,m≤20),代表国土的大小,n为水平区域数,m为垂直区域数。 【输出数据】 输出文件仅一行,包含一个正整数,即最多可以安置的传教士的数目。 【输入样例】bishop.in 3 4 【输出样例】bishop.out 6 【说明】样例安置方案如下图所示,X表示为某传教士的据点。 X X X O O O O O O X X X 2、迷宫 时间限制:4秒 【问题描述】 在一个N*N的点阵中,如N=4,你现在站在(1,1),出口在(4,4)。你可以通过上、下、左、右四种移动方法,在迷宫内行走,但是同一个位置不可以访问两次,亦不可以越界。表格最上面的一行加黑数字A[1..4]分别表示迷宫第I列中需要访问并仅可以访问的格子数。右边一行加下划线数字B[1..4]则表示迷宫第I行需要访问并仅可以访问的格子数。如图中带括号红色数字就是一条符合条件的路线。 给定N,A[1..N] B[1..N]。输出一条符合条件的路线,若无解,输出NO ANSWER。(使用U,D,L,R分别表示上、下、左、右。) 2 2 1 2 (4,4) 1 (2,3) (3,3) (4,3) 3 (1,2) (2,2) 2 (1,1) 1 【输入格式】 第一行是数m (n 6 )。第二行有n个数,表示a[1]..a[n]。第三行有n个数,表示b[1]..b[n]。 【输出格式】 仅有一行。若有解则输出一条可行路线,否则输出“NO ANSWER”。 【输入输出样例】 MAZE.IN MAZE.OUT 4 2 2 1 2 1 2 3 1 URURRU 3、字符串的序号(string.pas) 【问题描述】 字符串 acab 含有两个 a ,一个 b ,一个 c ,和 acab aacb,baca等,因为他们也是含有两个 a ,一个 b ,一个 c acab 是第 5 个,我们就说 acab 的序号是 5。再如:ba 的序号是 2,aa 的序号是 1。编程求出给定字符串 S(长度=100) 的序号 P(保证=30000)注意:字符串只含小写字母。 S 【输出格式】 输出:P 【输入样例】string.in acab 【输出样例】string.out 5 4、0/1字符串问题(strings.PAS) 【问题描述】 输出仅由0和1组成的长度为N的字符串,并且其中不可含有三个连续的相同子串。 【输入格式】 输入:字符串长度n(n=40)。 【输出格式】 输出:所有满足条件的字符串的个数。 【输入样例】strings.in 2 【输出样例】strings.out 4 5、置棋问题(Chess.PAS) 【问题描述】 在m*n的主格中任意指定x个格子构成一个棋盘,在任一个构成的棋盘上放置k个棋子,要求任意两个棋子不得位于同一行或同一列上,要求输出满足条件的所有方案。(注意棋盘是稀疏的,即xm*n/2。1m,n10)。 编程要求: 1.对给定的一个棋盘,求出该棋盘可放置的最多的棋子数p。 2.记di为该棋盘上放置i个棋子时的方案总数(1ip),其中经旋转和镜面反射而得的方案记为不同方案,对每一个i,求出相应的di。 3.程序应能够连续处理多个棋盘,对每一个棋盘,输出p和d1,d2,…,dp,只需输出数字,不必输出具体方案。 【输入格式】 第一行是两个数字,代表第一个棋盘的m和n,以下为一个仅由0、1组成的m×n矩阵,某一个位置值为1表示相应的格子在这个棋盘上,为0表示相应的格子不在棋盘上。 【输出格式】 第一行是棋盘可放置的最多的棋子数p; 第二行分别列出从1个棋子到放p个棋子的方案总数。 【输入样例】Chess.in 5 5 0 1 1 1 0 0 1 0 0 0 1 1 1 0 0 0 0 1

文档评论(0)

wt60063 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档