人工智能通识作业

人工智能通识作业

一、汉诺塔问题(重复出现 2 次,要求一致)

  1. 问题描述:有 A、B、C 三根柱子,n 个 “上小下大” 叠放于 A 柱的圆盘,需将所有圆盘移到 C 柱(可借助 B 柱),每次仅能移动 1 个圆盘,且大圆盘不能放在小圆盘上方,输出每步移动操作。
  2. 输入要求:正整数 n(1≤n≤10)。
  3. 输出格式:每行输出 “移动圆盘 x 从柱子 X 到柱子 Y”(x 为圆盘编号 1~n,X、Y 为 A/B/C)。
  4. 示例:n=1 时直接移动圆盘 1 从 A 到 C;n=2 需 3 步,n=3 需 7 步。

二、农夫抓牛问题

  1. 问题描述:农夫位于数轴上 N 点,牛位于 K 点(牛静止),农夫有三种移动方式(X±1、2×X),每种方式耗时 1 分钟,求抓住牛的最少时间。
  2. 输入要求:两个整数 N 和 K(0≤N、K≤100000)。
  3. 输出要求:最少耗时(整数)。
  4. 示例:输入 5 17,输出 4。
  5. 特殊要求:需用递归实现。

三、数字金字塔最大路径和问题

  1. 问题描述:给定 R 行数字金字塔,从最高点出发,每步可走向左下方或右下方的点,求路径经过数字的最大和。
  2. 输入要求:第一行输入行数 R(1≤R≤1000),后续 R 行依次为金字塔每行的非负整数(≤100)。
  3. 输出要求:单独一行输出最大路径和。
  4. 示例:输入 5 行金字塔数据,最大和为 86。