news 2026/1/1 12:16:52

人工智能通识 题目一

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
人工智能通识 题目一

汉诺塔问题

题目描述

有 3 根柱子(记为 A、B、C)和 n 个大小互不相同的圆盘,所有圆盘初始时都套在柱子 A 上,且圆盘按 “上小下大” 的顺序叠放(大圆盘不能放在小圆盘上方)。要求将所有圆盘从柱子 A 移动到柱子 C,期间可借助柱子 B 作为辅助,每次只能移动 1 个圆盘。请编写程序,输出移动圆盘的每一步操作步骤。

输入要求

输入一个正整数 n(表示圆盘的数量,1≤n≤10,避免递归深度过大)。

输出要求

每行输出一步移动操作,格式为:移动圆盘x从柱子X到柱子Y(其中 x 为圆盘编号,按 “上小下大” 编号为 1~n;X、Y 为柱子编号 A/B/C)。

用例输入1

n=1

用例输出1

移动圆盘1从柱子A到柱子C

用例输入2

n=2

用例输出2

移动圆盘1从柱子A到柱子B

移动圆盘2从柱子A到柱子C

移动圆盘1从柱子B到柱子C

用例输入3

n=3

用例输出3

移动圆盘1从柱子A到柱子C

移动圆盘2从柱子A到柱子B

移动圆盘1从柱子C到柱子B

移动圆盘3从柱子A到柱子C

移动圆盘1从柱子B到柱子A

移动圆盘2从柱子B到柱子C

移动圆盘1从柱子A到柱子C

def hanoi(n, source, auxiliary, target): """ 递归实现汉诺塔移动逻辑 :param n: 当前需要移动的圆盘数量 :param source: 起始柱子(如'A') :param auxiliary: 辅助柱子(如'B') :param target: 目标柱子(如'C') """ if n == 1: # 递归终止条件:只有1个圆盘时,直接从起始柱移到目标柱 print(f"移动圆盘1从柱子{source}到柱子{target}") return # 步骤1:把n-1个圆盘从起始柱移到辅助柱(借助目标柱) hanoi(n - 1, source, target, auxiliary) # 步骤2:把第n个圆盘从起始柱移到目标柱 print(f"移动圆盘{n}从柱子{source}到柱子{target}") # 步骤3:把n-1个圆盘从辅助柱移到目标柱(借助起始柱) hanoi(n - 1, auxiliary, source, target) # 处理用户输入并调用函数 if __name__ == "__main__": # 获取用户输入的圆盘数量,确保输入是1~10的正整数 while True: try: n = int(input("请输入圆盘数量n(1≤n≤10):")) if 1 <= n <= 10: break else: print("输入错误!请输入1到10之间的正整数。") except ValueError: print("输入错误!请输入有效的整数。") # 调用汉诺塔函数,起始柱A,辅助柱B,目标柱C hanoi(n, 'A', 'B', 'C')

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/20 5:31:08

Langchain-Chatchat CA机构选择知识库构建

Langchain-Chatchat 在 CA 机构知识库构建中的实践与思考 在数字身份认证日益普及的今天&#xff0c;证书认证&#xff08;CA&#xff09;机构每天都要应对大量来自内部员工和外部用户的政策咨询——“证书更新要准备哪些材料&#xff1f;”“吊销流程需要几个工作日&#xff…

作者头像 李华
网站建设 2025/12/20 5:24:02

Langchain-Chatchat威胁狩猎知识检索系统

Langchain-Chatchat 威胁狩猎知识检索系统 在现代网络安全运营中&#xff0c;一个常见的场景是&#xff1a;安全分析师面对一份新的攻击报告&#xff0c;试图确认该行为是否曾在内部环境中出现过。他需要快速查找“APT29组织的常用C2域名”、“SolarWinds攻击中的横向移动手法”…

作者头像 李华
网站建设 2025/12/20 5:13:46

Apache SeaTunnel性能调优全攻略:从新手到专家的5个核心步骤

Apache SeaTunnel性能调优全攻略&#xff1a;从新手到专家的5个核心步骤 【免费下载链接】seatunnel 项目地址: https://gitcode.com/gh_mirrors/seat/seatunnel Apache SeaTunnel作为企业级数据集成平台&#xff0c;在实际部署中经常面临性能瓶颈的挑战。本文通过系统…

作者头像 李华
网站建设 2025/12/31 6:21:50

20、深入探索内容管理系统的功能与应用

深入探索内容管理系统的功能与应用 在当今数字化时代,企业网站的内容管理变得至关重要。有效的内容管理系统不仅能够提升网站的运营效率,还能确保内容的质量和一致性。下面我们将详细探讨内容管理系统中的数据导入导出、工作流、用户角色、与其他服务器的集成等关键方面。 …

作者头像 李华
网站建设 2025/12/20 5:09:52

21、企业内容管理与集成解决方案深度解析

企业内容管理与集成解决方案深度解析 在当今数字化的商业环境中,企业面临着诸多挑战,如内容管理的一致性、业务应用和流程的集成等。本文将深入探讨两个重要的解决方案:Content Management Server与SharePoint Portal Server的协同工作,以及BizTalk Server在业务集成方面的…

作者头像 李华
网站建设 2025/12/20 5:09:51

22、BizTalk Server:企业数据交换与业务流程管理的综合解决方案

BizTalk Server:企业数据交换与业务流程管理的综合解决方案 在企业间的数据交换和业务流程管理中,面临着诸多挑战,如数据格式不匹配、业务流程复杂多变以及数据安全保护等问题。BizTalk Server提供了一系列强大的功能和工具,能够有效应对这些挑战,实现企业间的高效协作和…

作者头像 李华