pascal-noip历届精选试题
- 格式:doc
- 大小:259.50 KB
- 文档页数:22
第12讲-历届NOIP复赛试题(1)模拟试题1. Cantor表(cantor.pas/c/cpp)【问题描述】现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的。
他是用下面这一张表来证明这一命题的:我们以Z字形给上表的每一项编号。
第一项是1/1,然后是1/2,2/1,3/1,2/2,…【输入】整数N(1≤N≤10000000)【输出】表中的第N项【样例输入】7【样例输出】- 1 -1/4【分析】基础题,模拟。
首先确定所在斜行,然后针对奇数行和偶数行进行计算。
【参考代码】varn,x:longint ;beginassign(input,'cantor.in');reset(input);assign(output,'cantor.out');rewrite(output);readln(n);x:=0;repeat//确定所在的斜行inc(x);n:=n-x ;until n<=0;if x mod2=0then write((x+n),'/',(1-n))//确定如何输出else writeln((1-n),'/',(x+n));close(input);close(output );end.2. 回文数(huiwen.pas/c/cpp)【问题描述】若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。
例如:给定一个10进制数56,将56加56(即把56从右向左读),得到121是一个回文数。
又如:对于10进制数87:STEP1:87+78 = 165 STEP2:165+561 = 726STEP3:726+627 = 1353 STEP4:1353+3531 = 4884在这里的一步是指进行了一次N进制的加法,上例最少用了4步得到回文数4884。
写一个程序,给定一个N(2<=N<=10,N=16)进制数M,求最少经过几步可以得到回文数。
NOIP2018初赛提高组Pascal试题第二十四届全国青少年信息学奥林匹克联赛初赛提高组Pascal语言试题竞赛时间:2018年10月13日14:30~16:30选手注意:●试题纸共有10页,答题纸共有2页,满分100分。
请在答题纸上作答,写在试题纸上的一律无效。
●不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共10题,每题2分,共计20分;每题有且仅有一个正确选项)1.下列四个不同进制的数中,与其它三项数值上不相等的是()。
A. (269)16B. (617)10C. (1151)8D. (1001101011)22.下列属于解释执行的程序设计语言是()。
A. CB. C++C. PascalD. Python3.中国计算机学会于()年创办全国青少年计算机程序设计竞赛。
A. 1983B. 1984C. 1985D. 19864.设根节点深度为0,一棵深度为h的满k(k>1)叉树,即除最后一层无任何子节点外,每一层上的所有结点都有k个子结点的树,共有()个结点。
A. (k h+1 - 1) / (k - 1)B. k h-1C. k hD. (k h-1) / (k - 1)5.设某算法的时间复杂度函数的递推方程是T(n) = T(n - 1) + n (n为正整数)及T(0) = 1,则该算法的时间复杂度为()。
A. O(log n)B. O(n log n)C. O(n)D. O(n2)6.表达式a * d - b * c的前缀形式是()。
A. a d * b c * -B. - * a d * b cC. a * d - b * cD. - * * a d b c7.在一条长度为1的线段上随机取两个点,则以这两个点为端点的线段的期望长度是()。
A. 1 / 2B. 1 / 3C. 2 / 3D. 3 / 58.关于Catalan数Cn = (2n)! / (n + 1)! / n!,下列说法中错误的是()。
noip初三试题及答案一、选择题(每题2分,共10分)1. 在计算机编程中,以下哪个选项不是数据结构的类型?A. 线性表B. 树C. 图D. 函数答案:D2. 以下哪种排序算法的时间复杂度为O(n^2)?A. 快速排序B. 归并排序C. 插入排序D. 选择排序答案:C3. 在C++编程语言中,以下哪个关键字用于定义类?A. structB. classC. unionD. enum答案:B4. 在数据库管理系统中,以下哪个操作用于从表中删除数据?A. SELECTB. INSERTC. UPDATED. DELETE答案:D5. 以下哪种网络协议用于在互联网上传输数据?A. HTTPB. FTPC. TCPD. SMTP答案:C二、填空题(每题3分,共15分)1. 在计算机科学中,_________算法是一种用于解决最优化问题的算法,它通过不断迭代逼近最优解。
答案:梯度下降2. 在HTML中,用于定义网页头部的标签是_________。
答案:<head>3. 在Python中,_________函数用于计算列表中所有元素的和。
答案:sum4. 在关系型数据库中,_________是一种用于存储和管理数据的表格结构。
答案:表5. 在操作系统中,_________是指计算机系统在执行任务时,能够同时处理多个任务的能力。
答案:多任务三、简答题(每题5分,共20分)1. 请简述什么是递归,并给出一个递归函数的例子。
答案:递归是一种在函数中调用自身的编程技巧,它允许函数在解决更小规模的问题时重复调用自身。
例如,计算阶乘的递归函数可以表示为:```pythondef factorial(n):if n == 0:return 1else:return n * factorial(n - 1)```2. 描述什么是二叉树,并给出它的一个应用场景。
答案:二叉树是一种特殊的树形数据结构,其中每个节点最多有两个子节点,通常称为左子节点和右子节点。
NOIP真题汇总想想在NOIP前总得做做真题吧,于是长达⼀个⽉的刷题开始了涉及2008-2016年⼤部分题⽬NOIP [2008] 4/41、传纸条:清真的三维DP2、笨⼩猴:字符串模拟3、⽕柴棒等式:打表+循环4、双栈排序:贪⼼+栈NOIP [2009] 3/42、Hankson的趣味题:数论,gcd相关3、最优贸易:建图+SPFA4、靶形数独:较难搜索+剪枝NOIP [2010] 4/41、引⽔⼊城:DP+bfs(较好)2、关押罪犯:贪⼼+并查集3、机器翻译:模拟4、乌龟棋:简单DPNOIP [2011] 5/61、铺地毯:模拟2、选择客栈:DP3、Mayan游戏:较难搜索4、计算系数:组合数5、聪明的质检员:⼆分答案+前缀和NOIP [2012] 4/61、Vigenère 密码:字符串2、国王游戏:贪⼼+⾼精4、同余⽅程:扩欧5、借教室:⼆分答案+前缀和NOIP [2013] 5/61、转圈游戏:快速幂2、⽕柴排队:逆序对+贪⼼3、货车运输:最⼩⽣成树+lca4、积⽊⼤赛:递推或者分治5、花匠:简单DPNOIP [2014] 6/61、⽣活⼤爆炸版⽯头剪⼑布:模拟2、联合权值:类树形DP3、飞扬的⼩鸟:类背包DP4、⽆线⽹络发射器选址:模拟5、寻找道路:图论,反向bfs6、解⽅程:秦九韶NOIP [2015] 6/61、神奇的幻⽅:模拟2、信息传递:拓扑排序3、⽃地主:较难搜索4、跳⽯头:⼆分答案5、⼦串:DP6、运输计划:⼆分答案+树上差分NOIP [2016] 6/61、玩具谜题:模拟2、天天爱跑步:lca+树上差分3、换教室:floyd+概率DP4、组合数问题:组合数5、蚯蚓:队列6、愤怒的⼩鸟:状态压缩DP。
第十二届全国信息学奥林匹克分区联赛(NOIP2006)复赛试题(提高组竞赛用时:3小时)关于竞赛中不同语言使用限制的说明一.关于使用Pascal语言与编译结果的说明1.对于Pascal语言的程序,当使用IDE和fpc编译结果不一致时,以fpc的编译结果为准。
2.允许使用数学库(uses math子句),以及ansistring。
但不允许使用编译开关(最后测试时pascal的范围检查开关默认关闭:{$R-,Q-,S-}),也不支持与优化相关的选项。
二.关于C++语言中模板使用的限制说明1.允许使用的部分:标准容器中的布尔集合,迭代器,串,流。
相关的头文件:<bitset > <iterator > <string > <iostream >2.禁止使用的部分:序列:vector,list,deque序列适配器:stack, queue, priority_queue 关联容器:map, multimap, set, multiset 拟容器:valarray 散列容器:hash_map, hash_set, hash_multimap, hash_multiset 所有的标准库算法相关头文件:<vector > <list > <deque > <stack > <map > <set > <algorithm >1.能量项链(energy.pas/c/cpp)【问题描述】在Mars星球上,每个Mars人都随身佩带着一串能量项链。
在项链上有N颗能量珠。
能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。
并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。
因为只有这样,通过吸盘(吸盘是Mars人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量。
NOI’95 “同创杯”全国青少年信息学(计算机)奥林匹克竞赛分区联赛初赛试题(初中组)竞赛用时:2小时一、基础题:<1> 执行①C>DIR 命令后,屏幕上显示如下画面:FORMA T COM 12145SYS COM 4878PUC BA T 126XCOPY EXE 112164 FILE(S)123456 bytes free接着又顺序执行了如下几条DOS 命令:②C>DIR> DF.TXT //表示将列表显示的目录作为文件写盘//①C>TYPE DF.TXT②C>DIR试问:执行命令③和④在屏幕上显示的结果是否与①相同?<2> 请将以下程序段表示的计算公式写出来(假设X的值已给出)E:=1 ;A:=1 ;FOR N:=1 TO 10 DOA:=A*X/N ;E:=E+A;ENDFOR ;写出所表示的公式。
<3> 列举一个算法,使算法的解能对应相应的问题。
例如,设问题为:学生答题,答对一题可得10分,答错一题则要扣去5分,输入答对的题数(M)与答错的题数(N),求最后得分(S)是多少?列举出相应算法为:X:=10;Y:=5;READ(M,N);S:=X*M-Y*N;现有以下问题:用五角钱换成5分、2分与1分的硬币,可有多少种换法?请列出该问题的算法。
<4> 已知如下N*(N+1)/2个数据,按行的顺序存入数组A[1],A[2],……中:a11a21a22a31a32a33……a n1a n2a n3……a nn其中:第一个下标表示行第二个下标表示列。
若:a ij(i≥j,j,i=1,2,……n)存贮在A[k]中,试问:(1)k和i,j之间的关系如何表示?(2)给定k值(k≤n*(n+1)/2)后,写出能决定相应的i,j值的算法。
<5> 有红、黄、黑、白四色球各一个,放置在一个内存编号为1、2、3、4四个格子的盒中,每个格子放置一只球,它们的顺序不知。
一、单项选择题(共20题,每题1.5分,共计30分。
每题有且仅有一个正确答案。
)1.在以下各项中,()不是CPU的组成部分。
A.控制器B.运算器C.寄存器D.主板2.在关系数据库中,存放在数据库中的数据的逻辑结构以()为主。
A.二叉树B.多叉树C.哈希表D.二维表3.在下列各项中,只有()不是计算机存储容量的常用单位。
A.Byte B.KB C.UB D.TB4.ASCII码的含义是()。
A.二→十进制转换码B.美国信息交换标准代码C.数字的二进制编码D.计算机可处理字符的唯一编码5.一个完整的计算机系统应包括()。
A.系统硬件和系统软件B.硬件系统和软件系统C.主机和外部设备D.主机、键盘、显示器和辅助存储器6.IT的含义是()。
A.通信技术B.信息技术C.网络技术D.信息学7.LAN的含义是()。
A.因特网B.局域网C.广域网D.城域网8.冗余数据是指可以由其它数据导出的数据。
例如,数据库中已存放了学生的数学、语文和英语的三科成绩,如果还存放三科成绩的总分,则总分就可以看作冗余数据。
冗余数据往往会造成数据的不一致。
例如,上面4个数据如果都是输入的,由于操作错误使总分不等于三科成绩之和,就会产生矛盾。
下面关于冗余数据的说法中,正确的是()。
A.应该在数据库中消除一切冗余数据B.用高级语言编写的数据处理系统,通常比用关系数据库编写的系统更容易消除冗余数据C.为了提高查询效率,在数据库中可以保留一些冗余数据,但更新时要做相容性检验D.做相容性检验会降低效率,可以不理睬数据库中的冗余数据9.在下列各软件,不属于NOIP竞赛(复赛)推荐使用的语言环境有()。
A.gcc B.g++ C.Turbo C D.Free Pascal 10.以下断电后仍能保存数据的有()。
A.硬盘B.高速缓存C.显存D.RAM11.在下列关于计算机语言的说法中,正确的有()。
A.高级语言比汇编语言更高级,是因为它的程序的运行效率更高B.随着Pascal、C等高级语言的出现,机器语言和汇编语言已经退出了历史舞台C.高级语言比汇编语言程序更容易从一种计算机上移植到另一种计算机上D.C是一种面向对象的高级计算机语言12.近20年来,许多计算机专家都大力推崇递归算法,认为它是解决较复杂问题的强有力的工具。
第十五届全国青少年信息学奥林匹克联赛“建平杯”上海赛区初赛试题(小学组 PASCAL语言 90分钟完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、选择一个正确的答案代码(A/B/C/D),填入每题的括号内(每题2分,共30分);1、以下不属于文件管理功能的是( )。
A.删除文件 B.拷贝文件 C.运行文件 D.移动文件2、下列有关图像分辨率的说法正确的是图像分辨率越高,( )。
A.所需的打印时间越长,存储空间越小 B.所需的打印时间越长,存储空间越大C.所需的打印时间越短,存储空间越大 D.所需的打印时间越短,存储空间越小3、在制作电子小报时有过程如下:①确定主题②评价修改③设计版面④制作作品⑤收集与选择素材其合理的顺序是( )。
A.①②③④⑤ B.①⑤③④② C.②①⑤④③ D.⑤④③②①4、用IE浏览器浏览网页时,有时图片无法正常显示,下列操作有可能使图片正常显示的是单击( ) 按钮。
A.“停止” B.“搜索” C.“刷新”D.“历史”5、小明经常浏览学校网站,下列能使操作更加便捷的是( )。
①将学校网址设为浏览器主页地址②直接在地址栏中输入学校名称③通过搜索引擎搜索学校的网址再打开④将学校网址添加到收藏夹中A.②③ B.①④ C.①③ D.②④6、按照覆盖范围来说,校园网属于( )。
A.因特网 B.互联网 C.局域网 D.广域网7、在因特网上提供的服务很多,以下不是其中的服务的是()。
A.传统电话 B.IP电话 C.在线电影 D.QQ聊天8、计算机网络给人们带来了极大的便利,最基本的功能是()。
A.数据传输和资源共享 B.运算速度快 C.内存容量大 D.可以相互通讯9、关于电子邮件,不正确的描述是()。
A.可向多个收件人发送同一消息B.发送消息可包括文本、语音、图象、图形C.不可能携带计算机病毒 D.可发送一条由计算机程序自动作出应答的消息10、在以下网络应用中,要求带宽最低的应用是()。
第1题花生采摘2004年试题第2题peanuts.pas【问题描述】鲁宾逊先生有一只宠物猴,名叫多多。
这天,他们两个正沿着乡间小路散步,突然发现路边的告示牌上贴着一张小小的纸条:“欢迎免费品尝我种的花生!——熊字”。
鲁宾逊先生和多多都很开心,因为花生正是他们的最爱。
在告示牌背后,路边真的有一块花生田,花生植株整齐地排列成矩形网格(如图1)。
有经验的多多一眼就能看出,每棵花生植株下的花生有多少。
为了训练多多的算术,鲁宾逊先生说:“你先找出花生最多的植株,去采摘它的花生;然后再找出剩下的植株里花生最多的,去采摘它的花生;依此类推,不过你一定要在我限定的时间内回到路边。
”我们假定多多在每个单位时间内,可以做下列四件事情中的一件:1)从路边跳到最靠近路边(即第一行)的某棵花生植株;2)从一棵植株跳到前后左右与之相邻的另一棵植株;3) 采摘一棵植株下的花生;4)从最靠近路边(即第一行)的某棵花生植株跳回路边。
现在给定一块花生田的大小和花生的分布,请问在限定时间内,多多最多可以采到多少个花生?注意可能只有部分植株下面长有花生,假设这些植株下的花生个数各不相同。
例如在图2所示的花生田里,只有位于(2, 5), (3, 7), (4, 2), (5, 4)的植株下长有花生,个数分别为13, 7, 15, 9。
沿着图示的路线,多多在21个单位时间内,最多可以采到37个花生。
【输入文件】输入文件peanuts.in的第一行包括三个整数,M, N和K,用空格隔开;表示花生田的大小为M * N(1 <= M, N <= 20),多多采花生的限定时间为K(0 <= K <= 1000)个单位时间。
接下来的M行,每行包括N个非负整数,也用空格隔开;第i + 1行的第j个整数Pij(0 <= Pij <= 500)表示花生田里植株(i, j)下花生的数目,0表示该植株下没有花生。
【输出文件】输出文件peanuts.out包括一行,这一行只包含一个整数,即在限定时间内,多多最多可以采到花生的个数。
【样例输入1】6 7 210 0 0 0 0 0 00 0 0 0 13 0 00 0 0 0 0 0 70 15 0 0 0 0 00 0 0 9 0 0 00 0 0 0 0 0 0【样例输出1】37【样例输入2】6 7 200 0 0 0 0 0 00 0 0 0 13 0 00 0 0 0 0 0 70 15 0 0 0 0 00 0 0 9 0 0 00 0 0 0 0 0 0【样例输出2】28第2题FBI树2004年试题第3题fbi.pas【问题描述】我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I 串,既含“0”又含“1”的串则称为F串。
FBI树是一种二叉树[1],它的结点类型也包括F结点,B结点和I结点三种。
由一个长度为2N的“01”串S可以构造出一棵FBI树T,递归的构造方法如下:1) T的根结点为R,其类型与串S的类型相同;2)若串S的长度大于1,将串S从中间分开,分为等长的左右子串S1和S2;由左子串S1构造R的左子树T1,由右子串S2构造R的右子树T2。
现在给定一个长度为2N的“01”串,请用上述构造方法构造出一棵FBI树,并输出它的后序遍历[2]序列。
【输入文件】输入文件fbi.in的第一行是一个整数N(0 <= N <= 10),第二行是一个长度为2N的“01”串。
【输出文件】输出文件fbi.out包括一行,这一行只包含一个字符串,即FBI树的后序遍历序列。
【样例输入】310001011【样例输出】IBFBBBFIBFIIIFF【数据规模】对于40%的数据,N <= 2;对于全部的数据,N <= 10。
第3题火星人2004年试题第4题martian.pas【问题描述】人类终于登上了火星的土地并且见到了神秘的火星人。
人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法。
这种交流方法是这样的,首先,火星人把一个非常大的数字告诉人类科学家,科学家破解这个数字的含义后,再把一个很小的数字加到这个大数上面,把结果告诉火星人,作为人类的回答。
火星人用一种非常简单的方式来表示数字——掰手指。
火星人只有一只手,但这只手上有成千上万的手指,这些手指排成一列,分别编号为1,2,3……。
火星人的任意两根手指都能随意交换位置,他们就是通过这方法计数的。
一个火星人用一个人类的手演示了如何用手指计数。
如果把五根手指——拇指、食指、中指、无名指和小指分别编号为1,2,3,4和5,当它们按正常顺序排列时,形成了5位数12345,当你交换无名指和小指的位置时,会形成5位数12354,当你把五个手指的顺序完全颠倒时,会形成54321,在所有能够形成的120个5位数中,12345最小,它表示1;12354第二小,它表示2;54321最大,它表示120。
下表展示了只有3根手指时能够形成的6个3位数和它们代表的数字:三进制数123132213231312321代表的数字123456现在你有幸成为了第一个和火星人交流的地球人。
一个火星人会让你看他的手指,科学家会告诉你要加上去的很小的数。
你的任务是,把火星人用手指表示的数与科学家告诉你的数相加,并根据相加的结果改变火星人手指的排列顺序。
输入数据保证这个结果不会超出火星人手指能表示的范围。
【输入文件】输入文件martian.in包括三行,第一行有一个正整数N,表示火星人手指的数目(1 <= N <= 10000)。
第二行是一个正整数M,表示要加上去的小整数(1 <= M <= 100)。
下一行是1到N这N个整数的一个排列,用空格隔开,表示火星人手指的排列顺序。
【输出文件】输出文件martian.out只有一行,这一行含有N个整数,表示改变后的火星人手指的排列顺序。
每两个相邻的数中间用一个空格分开,不能有多余的空格。
【样例输入】531 2 3 4 5【样例输出】1 2 4 5 3【数据规模】对于30%的数据,N<=15;对于60%的数据,N<=50;对于全部的数据,N<=10000;第4题Jam的计数法(2006年第3题)count.pas【问题描述】Jam是个喜欢标新立异的科学怪人。
他不使用阿拉伯数字计数,而是使用小写英文字母计数,他觉得这样做,会使世界更加丰富多彩。
在他的计数法中,每个数字的位数都是相同的(使用相同个数的字母),英文字母按原先的顺序,排在前面的字母小于排在它后面的字母。
我们把这样的“数字”称为Jam数字。
在Jam数字中,每个字母互不相同,而且从左到右是严格递增的。
每次,Jam还指定使用字母的范围,例如,从2到10,表示只能使用{b,c,d,e,f,g,h,i,j}这些字母。
如果再规定位数为5,那么,紧接在Jam数字“bdf ij”之后的数字应该是“bdghi”。
(如果我们用U、V依次表示Jam数字“bdfij”与“bdghi”,则U<V< span>,且不存在Jam数字P,使U<P<V< span>)。
你的任务是:对于从文件读入的一个Jam数字,按顺序输出紧接在后面的5个Jam数字,如果后面没有那么多Jam数字,那么有几个就输出几个。
【输入文件】输入文件counting.in 有2行,第1行为3个正整数,用一个空格隔开:s t w(其中s为所使用的最小的字母的序号,t为所使用的最大的字母的序号。
w为数字的位数,这3个数满足:1≤s<T< span>≤26, 2≤w≤t-s )第2行为具有w个小写字母的字符串,为一个符合要求的Jam数字。
所给的数据都是正确的,不必验证。
【输出文件】输出文件counting.out 最多为5行,为紧接在输入的Jam数字后面的5个Jam数字,如果后面没有那么多Jam数字,那么有几个就输出几个。
每行只输出一个Jam数字,是由w个小写字母组成的字符串,不要有多余的空格。
【输入样例】2 10 5bdfij【输出样例】bdghibdghjbdgijbdhijbefgh第5题.守望者的逃离2007年第3题escape.pas【问题描述】恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变。
守望者在与尤迪安的交锋中遭遇了围杀,被困在一个荒芜的大岛上。
为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去。
到那时,岛上的所有人都会遇难。
守望者的跑步速度为17m/s,以这样的速度是无法逃离荒岛的。
庆幸的是守望者拥有闪烁法术,可在1s内移动60m,不过每次使用闪烁法术都会消耗魔法值10点。
守望者的魔法值恢复的速度为4点/s,只有处在原地休息状态时才能恢复。
现在已知守望者的魔法初值M,他所在的初始位置与岛的出口之间的距离S,岛沉没的时间T。
你的任务是写一个程序帮助守望者计算如何在最短的时间内逃离荒岛,若不能逃出,则输出守望者在剩下的时间内能走的最远距离。
注意:守望者跑步、闪烁或休息活动均以秒(s)为单位,且每次活动的持续时间为整数秒。
距离的单位为米(m)。
【输入】输入文件escape.in仅一行,包括空格隔开的三个非负整数M, S, T。
【输出】输出文件escape.out包含两行:第1行为字符串“Yes”或“No”(区分大小写),即守望者是否能逃离荒岛。
第2行包含一个整数。
第一行为“Yes”(区分大小写)时表示守望者逃离荒岛的最短时间;第一行为“No”(区分大小写)时表示守望者能走的最远距离。
【输入输出样例1】escape.in 39 200 4escape.outNo197【输入输出样例2】escape.in36 255 10escape.outYes6【限制】30%的数据满足:1 <= T <= 10, 1 <= S <= 10050%的数据满足:1 <= T <= 1000, 1 <= S <= 10000100%的数据满足:1 <= T <= 300000, 0 <= M <= 1000, 1 <= S <= 108.第6题Hanoi双塔问题. 2007年第4题hanoi.pas【问题描述】给定A、B、C三根足够长的细柱,在A柱上放有2n个中间有孔的圆盘,共有n个不同的尺寸,每个尺寸都有两个相同的圆盘,注意这两个圆盘是不加区分的(下图为n=3的情形)。
现要将这些圆盘移到C柱上,在移动过程中可放在B柱上暂存。
要求:(1)每次只能移动一个圆盘;(2)A、B、C三根细柱上的圆盘都要保持上小下大的顺序;任务:设A n为2n个圆盘完成上述任务所需的最少移动次数,对于输入的n,输出A n。