問题中的变与不变.pptVIP

  • 1
  • 0
  • 约1.91千字
  • 约 25页
  • 2017-04-10 发布于上海
  • 举报
問题中的变与不变

问题中的变与不变 长沙市雅礼中学 陈雪 引言 对变量进行操作是信息学中的常见问题。 如果能找到变量之间的关系,把变量转化成不变量,那么算法的效率就将得到质的提升。 [例一]蚂蚁 一条树枝上有N只蚂蚁。给出他们的位置,如何安排蚂蚁初始的方向使得全部蚂蚁掉落的时间最早或最晚。 最多1,000,000只蚂蚁。 感性认识 左边的蚂蚁向左端走,右边的蚂蚁向右端走。 如何使全部掉落的时间最晚? 猜想:让左边的蚂蚁向右端走,同时右边的蚂蚁向左端走。 理性分析 直接证明猜想难度比较大。 看一般的情况: 纪录2只蚂蚁的有用信息:速度 和位置 。 设 。 在蚂蚁相遇前一刻, 在蚂蚁相遇后一颗, 一个集合内蚂蚁相遇 集合不变 继续分析 另 任何两只属于集合U内的蚂蚁相遇之后,集合U不变。 集合U只随着时间的变化而变化。 {Ansi}={蚂蚁I按起始方向走到端点} 继续分析 回到原问题 最早时间= 最迟时间= 猜想得证!! 最终时间复杂度O( n )。 即左边蚂蚁向左走,右边蚂蚁向右走 Max{蚂蚁I向近端出发} Max{蚂蚁I向远端出发} 即左边蚂蚁向右走,右边蚂蚁向左走 小结 分析题目的特殊特点: 1.原路返回 2.速度相同 将速度变量固定,成为常量。 问题得到了简化。 [例二]circular way 安排一

文档评论(0)

1亿VIP精品文档

相关文档