Lazy loaded image
Task 3
Words 770Read Time 2 min
2025-5-29

✅ Task 3 总览:Robbie 的变形任务

🎯 目标:

Robbie 接收到一个按顺序探索的 地质特征名称列表,你要帮助他:
  • 决定是否要变形为 Drone 或 AUV
  • 找出完成任务所需的最短总时间
  • 自动执行该任务,并输出过程与耗时

🤖 3 种形态的探索速度:

形态
山 (height)
湖 (depth)
陨石坑 (perimeter)
Robot (默认)
6
8
10
Drone
12
6
8
AUV
2
12
6
⏩ Robbie 最多只能变形一次,且偏好顺序是:
如果多个选项耗时一样,选偏好更高的那个。

🔄 继承经验机制:

  • Robbie 之前探索过的特征类型仍然会让新形态获得速度提升(+20%)
  • 比如,如果原形 Robbie 已探索 1 个 lake,则 Drone 在 lake 上的基础速度 6 会变为 6 * 1.2 = 7.2

🚘 形态:

三种形态:Robot, Drone, AUV
💡

🧾 观察速度表可知:

  • Robot 形态 → 探索 Crater 最快
  • Drone 形态 → 探索 Mountain 最快
  • AUV 形态 → 探索 Lake 最快
💡 乍看之下,似乎可以简单地用“哪种地形占多数就用哪种形态”?

❌ 答案:绝对不是!

⚠️ 干扰因素如下:

  1. 每种地形的个体数据差异
      • 不同山的高度差异可能非常大,小山比大湖更快完成
      • 个体差异影响实际耗时,不能简单用数量判断
  1. 经验增长带来的速度提升
      • 每探索一种地形,相关速度提升 20%
      • 这种加速是累积的,会影响后续总耗时
      • 某种形态在初期劣势,后期可能变成优势

伪代码:


Jason版
Task3伪代码

Task3.py:

 

✅ 结论:

Task 3 机器人不能仅凭地形数量决定变形形态,必须模拟三种方案的实际总耗时,综合地形数据和经验提升效果,选出耗时最短的一种形态。从前俩题的代码上做出衍生,做好OOP。我们问题不大。