首页 / 题库

P15128 - 新汉诺塔

数据结构入门
通过次数0 提交次数0 内存限制 128MB 时间限制3秒

描述

设有n个大小不等的中空圆盘,按从小到大的顺序从1到n编号。将这n个圆盘任意的迭套在三根立柱上,立柱的编号分别为A,B,C,这个状态称为初始状态。现在要求找到一种步数最少的移动方案,使得从初始状态转变为目标状态。移动时有如下要求:一次只能移一个盘;不允许把大盘移到小盘上面。

输入

第一行一个整数,状态中圆盘总数n。

接下来三行每行若干个整数,分别代表初始状态下A,B,C柱子上的圆盘从下到上的编号,如果只有一个数0就代表这根柱子上没有数。

接下来三行每行若干个整数,分别代表目标状态下A,B,C柱子上的圆盘从下到上的编号,如果只有一个数0就代表这根柱子上没有数。

输出

一行一个整数,代表从初始状态到目标状态的最少步数。

样例

  • 复制
  • 复制

提示

【输出样例说明】

盘子的顺序如下所示:

move 1 from A to B

move 2 from A to C

move 1 from B to C

move 3 from A to B

move 1 from C to B

move 2 from C to A

move 1 from B to C

共7步。

【数据规模与约定】

对于100%的数据,1≤n≤45,1≤每个圆盘的编号≤n。

每行的圆盘描述是从下到上的圆盘编号。

意见反馈

    最多上传3张图片,格式为JPG、PNG、JPEG,单张不超过5MB

    注册

    发送验证码

    密码必须包含数字、字母和特殊字符

    找回密码

    发送验证码

    密码必须包含数字、字母和特殊字符

    运行 ID:67149

    • 测试点1:Accepted
    • 用时:0 ms
    • 内存:288 kb
    • 测试点2:Accepted
    • 用时:0 ms
    • 内存:288 kb
    输入
    203
    输出
    203

    test

    测评信息

    错误.in文件下载

    错误.out文件下载

    运行 ID:67149

    2019-01-24 15:06:36