- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
IOI2004 国家集训队论文 栗师
转化目标在解题中的应用
湖南省长沙市长郡中学 栗师
【摘要】
本文主要简单讨论目标转化思想对算法和分析解决问题的应
用。
第一部分概述了为什么要目标转化。第二部分举例说明了转化
目标在算法设计中的作用,先达到转化后的目标,再通过转化后的
目标得到最终目标。第三部分也通过一道例题,介绍了 化目标在
分析问题中的作用。最后总结一些常见的转化目标的方法,以及怎
样才能灵活的运用它。
【关键字】
转化目标、放大、缩小、简化问题
【正文】
一、引言
在信息学算法设计的过程中,总会遇到这样或者那样的困难。一个很大的
原因就是人的思维的深度和广度都是有限的,而未知世界是无穷的。当遇到一
道难解决的问题时,总是觉得目标太遥远,关系错综复杂,无从下手。这时,
不妨尝试转化一下目标,从转化后的目标进行思考。例如,减少限制,放松条
件,缩小范围等。解决了 化后的目标后,再站在一个新的高度设计算法,或
第 1 页 共 15 页
IOI2004 国家集训队论文 栗师
者把转化的目标的算法推广到原目标。目标转化思想从两个方向为我们提供了
捷径:算法和思路。
二、在算法设计中应用 化目标方法
如果一步不能达到目的,那么就分步解决,每一步就达到了一个中间目标,
这种方法会经常用到。最常见的就是,如果目标有多个限制,先只对一个限制
的得出结论,再从得出的结论出发,考虑其它的限制。下面是以Poland Olympiad
of Informatics 2003 的一题为例,来说明这一种方法。
[例1]超级马
在一个无限的棋盘上有一个超级马,它可以完成各种动作。每一种动
作都是通过两个整数来确定——第一个数说明列的数 (正数向右,负数向
左),第二个数说明行的数 (正数向上,负数向下),移动马来完成这个动
作。
任务
编写一个程序
从文本文件SUP.IN 输入说明各种超级马的数据库。
对每一个超级马进行确认,是否通过自己的行动可以到达盘面上的每
一个区。
将结果存储到文本文件SUP.OUT 。
输入
在文本文件 SUP.IN 的第一行中存在一个整数 k ,它代表数据库的数
1 k 100。在这个数字后出现 K 数据库。它们的每一个第一行中会出现整
数 N ,它是马能够完成的各种动作的数,1 n 100。接下来数据库的每一
个行中包含两个整数 P 和 Q,它们由单个空格分开,说明动作,-100 p ,
q 100。
输出
文本文件 SUP.OUT 应由K 行组成,当第i 个数据库的超级马可以到达
盘面的每一个区,第i 行应包含一个词TAK,而另一个词NIE 则恰恰相反。
输入样例
2
5
2 4
2 2
-3 -3
4 3
1 3
5
1 -3
第 2 页 共 15 页
IOI2004 国家集训队论文 栗师
2 1
4 1
4 -2
2 -2
输出样例
TAK
NIE
2.1 确定算法模型。
看到题目,最容易想到的算法是广搜。从当前已知能够到达的格子出发,
按照马的走法,扩展出另外一些能到达的格子,一直扩展下去,最后判断是不
是扩展完了所有的棋盘。
很快会发现这种做法是不行的,棋盘上格子的个数是无限的,不能判断能
文档评论(0)