noip2011初赛试题及答案(完美Word版)
NOIP2011普及组解析

第十七届全国青少年信息学奥林匹克联赛初赛试题(普及组 Pascal 语言两小时完成)●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共 20 题,每题 1.5 分,共计 30 分。
每题有且仅有一个正确选项。
)1、在二进制下,1101001 + () = 1110110。
A、1011B、1101C、1010D、1111二进制运算,逢二进一,简单2、字符“0”的 ASCII 码为 48,则字符“9”的 ASCII 码为()。
A、39B、57C、120D、视具体的计算机而定请牢记“0”48,“A”65,“a”973、一片容量为 8GB 的 SD 卡能存储大约()张大小为 2MB 的数码照片。
A、1600B、2000C、4000D、160008G=8*1024MB约为8000MB4、摩尔定律(Moore's law)是由英特尔创始人之一戈登·摩尔(Gordon Moore)提出来的。
根据摩尔定律,在过去几十年以及在可预测的未来几年,单块集成电路的集成度大约每()个月翻一番。
A、1B、6C、18D、36摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出来的。
其内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。
5、无向完全图是图中每对顶点之间都恰有一条边的简单图。
已知无向完全图 G 有 7 个顶点,则它共有()条边。
A、7B、21C、42D、49无向图的顶点数为n,则边数为n(n-1)/26、寄存器是()的重要组成部分。
A、硬盘B、高速缓存C、内存D、中央处理器(CPU)●寄存器是中央处理器内的组成部份。
寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址。
在中央处理器的控制部件中,包含的寄存器有指令寄存器(IR)和程序计数器(PC)。
在中央处理器的算术及逻辑部件中,包含的寄存器有累加器(ACC)。
模拟NOIP2011试题

模拟试题第一题:模拟开关题目描述:有N盏电灯排成一行,依次编号为1,2,3,…,N,各有一个开关,开始灯都亮着的。
现在还有N个人,第1人走过来依次把1和1的倍数电灯的开关都拉一下。
第2个人走过来依次把2和2的倍数的开关都拉一下,第3个人走过来依次把3和3的倍数的开关都拉一下,……问最后都有哪些灯是关着的?[输入文件] 文件名:moni.in文件中只有一行,包含1个整数N(其中5≤N≤10000)[输出文件] 文件名:moni.out文件共一行,分别为那些关着的灯泡的编号,如果没有灯泡关着,就输出0。
[样例输入]:moni.in的内容为:10[样例输出]:moni.out的内容为:1 4 9第二题:矩阵中心题目描述:一个整型矩阵的中心(x,y)是这样确定的:使第x行上边元素的总和与第x行下边元素的总和之差的绝对值最小,而且第y列左边元素的总和与第y列右边元素的总和之差的绝对值最小。
现在有一个整型矩阵,请你找出它的中心(x,y)。
如果只有一个中心,则输出中心位置;如果存在多个中心,则输出中心的个数。
输入格式:m+1行。
第一行有两个整数m、n,分别表示矩阵的行和列。
以下m行,每行有n个不超过200的正整数。
其中:2<m、n<=100。
输出格式:一行。
如果这有一个中心,则输出(x,y);否则输出一个整数,表示中心的个数。
输入样例一:5 52 3 2 3 22 3 4 2 23 4 2 2 45 2 2 2 33 34 4 2输出样例一:(2,2)输入样例二:3 42 2 2 22 4 4 22 2 2 2输出样例二:题目描述:周末Ztc想去剧场看演出,但他没有票。
这时,救世主wzj出现了,他慷慨的愿意卖给ztc一些票。
Wzj手上共有n张票,但每张票的费用都不一样,贪心的ztc想要得到尽可能多的票,但又想花费最少,慷慨的wzj愿意给连续的m张票。
Ztc希望你能帮助他在花钱范围内取得最大的票数。
NOIP2011初赛模拟训练题

NOIP 2011初赛模拟训练题(Pascal 语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共10题,每题1.5分,共计15分。
每题有且仅有一个正确答案)。
1、微型计算机中,( ) 的存取速度最快。
A.高速缓存B.外存储器C. 寄存器D. 内存储器E. 临时存储器2、已知A=35H,则A∧05H∨A∧3OH的结果是:( ) 。
A)3OH B)05H C) 32H D) 53H E)35H3、GB2312-80规定了一级汉字3755个,二级汉字3008个,其中二级汉字字库中的汉字是以()为序排列的。
A.以笔划多少B.以部首C.以ASCⅡ码D.以机内码E.以拼音4、在config.sys文件中,装入特定的可安装设备驱动程序的命令是().A.buffer B.files C.xcopy D.device E. load5、启动计算机引导DOS是将操作系统()A. 从磁盘调入中央处理器B. 从内存储器调入高速缓冲存储器C. 从软盘调入硬盘D. 从系统盘调入内存储器E. 从系统盘调入中央处理器6、Ip v6地址是由( ) 位二进制数码表示的。
A.16 B.32 C. 128 D. 64 E. 87、设有一个含有13个元素的Hash表(0~12),Hash函数是:H(key)=key % 13,其中% 是求余数运算。
用线性探查法解决冲突,则对于序列(2、8、31、20、19、18、53、27),18应放在第几号格中( ) 。
A. 9B.5C. 4D. 0E. 78、在有N个叶子节点的哈夫曼树中,其节点总数为()A.不确定B. 2N-1C. 2N+1D. 2NE. N+19、表达式(1+34)*5-56/7 的后缀表达式为()。
A. 1+34*5-56/7B. -*+1 34 5/56 7C. 1 34 +5*56 7/-D. 1 34 5* +56 7/-E. 1 34+5 56 7-*/10、计算机软件保护法是用来保护软件( )的。
2007-2011年noip初赛提高组试题及答案

第十七届全国青少年信息学奥林匹克联赛初赛试题(提高组 Pascal语言两小时完成)●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共20题,每题1.5分。
共计30分。
每题有且仅有一个正确选项。
)1.在二进制下,1100011 +()= 1110000。
A.1011 B.1101 C.1010 D.11112.字符“A”的ASCII码为十六进制41,则字符“Z”的ASCII码为十六进制的()。
A.66 B.5A C.50 D.视具体的计算机而定3.右图是一棵二叉树,它的先序遍历是()。
A.ABDEFC B.DBEFAC C.DFEBCA D.ABCDEF4.寄存器是()的重要组成部分。
A.硬盘B.高速缓存C.内存D.中央处理器(CPU)5.广度优先搜索时,需要用到的数据结构是()。
A.链表B.队列C.栈D.散列表6.在使用高级语言编写程序时,一般提到的“空间复杂度”中的“空间”是指()。
A.程序运行时理论上所占的内存空间B.程序运行时理论上所占的数组空间C.程序运行时理论上所占的硬盘空间D.程序源文件理论上所占的硬盘空间7.应用快速排序的分治思想,可以实现一个求第K大数的程序。
假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度为()。
A.O(n2)B.O(n log n)C.O(n) D.O(1)8.为解决Web应用中的不兼容问题,保障信息的顺利流通,()制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。
A.微软 B.美国计算机协会(ACM) C.联台国教科文组织D.万维网联盟(W3C)9.体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。
每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。
这种站队的方法类似于()算法。
A.快速排序B.插入排序C.冒泡排序D.归并排序10.1956年()授予肖克利(William Shockley)、巴丁(John Bardeen)和布拉顿(Walter Brattain),以表彰他们对半导体的研究和晶体管效应的发现。
NOIP2011初赛提高组答案详细解析

NOIP2011初赛提高组答案详细解析一、单项选择二、多项选择5. C是显然要选的,本题因为有300+400=700的情况,所以B也是可以的。
7.首先要知道逆序对的定义:序列A[1..n]里,对于i<j的A[i]>A[j],则称A[i]与A[j]为一对逆序对。
将给定的序列中所有逆序对列出来,统计其中数字只出现过3次的。
8.阶码肯定是要选的,D较长的尾数也是浮点数的一个特点,它只是保正了浮点数一定的精度,并不是它可以表示很大或者很小的数的原因。
9.本题描述有点含糊,它的本意可能是在计算S到B点的距离时出现有值。
三、问题求解1.9平面图中点数n与边数m之间的关系是:m<=3n-6,当n=5时,m的最大值为9。
2. 4求出给定的长度为n的字符串的最长上升序列的长度m,最小的操作次数为n-m。
四、阅读程序题1. 3先是统计出各个数字出现的次数存放在a数组里,然后I从1开始累加a[i],直到总数超过n的一半,最后输出i。
2.1 2 5 13 34斐波那契数列间隔输出3.150求遍历图中各个点所有边长的和的最大值。
本题4个点,求3条不同边的边长和的最大值。
4.57344 (213*7)本题稍有些难度,观察m*n的0-1矩阵,可以看出m=2n,此矩阵其实就是所有7位的二进制数。
每一列中有2n-1个1和个0,在一列里每个1都有2^(n-1)个0与它不同,同样每个0也有2^(n-1)个1与它不同,即每列的结果为22n-2*2=22n-1,n列的结果为n*22n-1,所以本题的结果为213*7.此题也可以从递推的角度来求解:f(n)=4n/(n-1)*f(n-1) (因为列增加1时行变为原来两倍,01的个数也对应为原来2倍)f(1)=2由此递推式子也可以得到通项公式:f(n)=n*22n-1。
再分析此题,发现就是从0开始由小到大每次增加1构造出所有n位二进制数,如果将低位写在右边更符合平常习惯,更易看出结果。
NOIP2011初赛普及组C++题目及答案

NOIP2011第十七届信息学奥林匹克竞赛初赛(普及组C++语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共20题,每题1.5分,共计30分。
每题有且仅有一个正确选项。
)1.在二进制下,1011001+()=1100110。
A.1011B.1101 C.1010D.11112.字符“0”的ASCII码为48,则字符“9”的ASCII码为()。
A.39B.57 C.120D.视具体的计算机而定3.一片容量为8G的SD卡能储存大约()张大小为2MB的数码照片。
A.4.A.1B.5.条边。
A.7B.6A.硬盘7.A.10B8.A.9.A.7B.10A.B.C.D.11.A.链表12.A.程序运行时理论上所占的内存空间B.程序运行时理论上所占的数组空间C.程序运行时理论上所占的硬盘空间D.程序源文件理论上所占的硬盘空间13.在含有n个元素的双向链表中查询是否存在关键字为k的元素,最快情况下运行的时间复杂度是()。
A.O(1)B.O(logn)C.O(n)D.O(nlogn)14.生物特征识别,是利用人体本身的生物特征进行身份认证的一种技术。
目前,指纹识别、虹膜识别、人脸识别等技术已广泛应用于政府、银行、安全防卫等领域。
一下不属于生物特征识别技术及其应用的是()。
A.指静脉验证B.步态验证C.ATM机密码验证D.声音验证15.现有一段文言文,要通过二进制哈夫曼编码进行压缩。
简单起见,假设这段文言文只由4个汉字“之”、“呼”、“者”、“也”组成,它们出现的次数分别为700、600、300、200。
那么,“也”字的编码长度是()。
A.1B.2 C.3D.416.关于汇编语言,下列说法错误的是()A.是一种与具体硬件相关的程序设计语言B.在编写复杂程序时,相对于高级语言而言代码量较大,且不易调试C.可以直接反问寄存器、内存单元、以及I/O端口D.随着高级语言的诞生,如今已完全被淘汰,不再使用17.()是一种选优搜索法,按选优条件向前搜索,以达到目标。
NOIP2011初赛模拟试题.

NOIP2011初赛模拟试题一、选择题:(本题共20题,每题1.5分,共计30分1、在计算机内部用来传送、存贮、加工处理的数据或指令都是以(形式进行的。
A、二进制码B、八进制码C、十进制码D、智能拼音码2、计算机的软件系统通常分为(A、硬件系统和软件系统B、高级软件和一般软件C、系统软件和应用软件D、军用软件和民用软件3、关于软盘读写孔,正确的说法是(。
A.从该孔读信息B.从该孔写信息C.当该孔处于开状态时,不能删除盘中文件。
D.该孔没有作用4、一棵二叉树的中序遍历为DGBAECHF,后序遍历为GDBEHFCA,则前序遍历是(A、ABCDFGHEB、ABDGCEFHC、ACBGDHEFD、ACEFHBGD5、下列叙述中错误的是(。
A、微机应避免置于强磁场之中B、微机使用时间不宜过长,而应隔几个小时关机一次C、微机应避免频繁关开,以延长其使用寿命D、微机应经常使用,不宜长期闲置不用6、计算机网络最主要的优点是(。
A、运算速度快B、共享资源C、精度高D、存储容量大7、下列4个不同进制表示的数中,最大的一个数是(A、(220.110B、(11011011.12C、(334.18D、(DC.1 168、为了区分汉字与ASCII码,计算机中汉字编码的最高位为(A、1B、0C、-1D、29、下列不正确的文件名是(。
A. command。
ComB. command_comC. command,comD. command:com10、一般来说,TCP/IP的IP提供的服务是(A.运输层服务B.会话层服务C.表示层服务D.网络层服务11、通信时,模拟信号也可以用数字信道来传输,能实现模拟信号与数字信号之间转换功能的是(A、D/AB、A/DC、ModemD、Codec12、一个栈的输入顺序为1、2、3、4、5,下列序列中可能是栈的输出序列是(。
A、54312B、24135C、21543D、1253413、不属于Internet的功能是(A、聊天B、远程教育C、查询资料D、传送能量14、下列描述计算机病毒的特性中,(不是正确的。
2011十七届noip提高组题目及答案

第十七届全国青少年信息学奥林匹克联赛初赛试题(提高组 Pascal语言两小时完成)一、单项选择题(共20题,每题1.5分。
共计30分。
每题有且仅有一个正确选项。
)1.在二进制下, +()= 。
A.1011 B.1101 C.1010 D.11112.字符“A”的ASCII码为十六进制41,则字符“Z”的ASCII码为十六进制的()。
A.66 B.5A C.50 D.视具体的计算机而定3.右图是一棵二叉树,它的先序遍历是()。
A.ABDEFC B.DBEFAC C.DFEBCA D.ABCDEF4.寄存器是()的重要组成部分。
A.硬盘B.高速缓存C.内存D.中央处理器(CPU)5.广度优先搜索时,需要用到的数据结构是()。
A.链表B.队列C.栈D.散列表6.在使用高级语言编写程序时,一般提到的“空间复杂度”中的“空间”是指()。
A.程序运行时理论上所占的内存空间B.程序运行时理论上所占的数组空间C.程序运行时理论上所占的硬盘空间D.程序源文件理论上所占的硬盘空间7.应用快速排序的分治思想,可以实现一个求第K大数的程序。
假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度为()。
A.O(n2)B.O(n log n)C.O(n) D.O(1)8.为解决Web应用中的不兼容问题,保障信息的顺利流通,()制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。
A.微软 B.美国计算机协会(ACM) C.联台国教科文组织D.万维网联盟(W3C)9.体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。
每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。
这种站队的方法类似于()算法。
A.快速排序B.插入排序C.冒泡排序D.归并排序10.1956年()授予肖克利(William Shockley)、巴丁(John Bardeen)和布拉顿(Walter Brattain),以表彰他们对半导体的研究和晶体管效应的发现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第十七届全国青少年信息学奥林匹克联赛初赛试题(提高组 Pascal语言两小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共20题,每题1.5分。
共计30分。
每题有且仅有一个正确选项。
)B 1.在二进制下,1100011 +()= 1110000。
A.1011 B.1101 C.1010 D.1111B 2.字符“A”的ASCII码为十六进制41,则字符“Z”的ASCII码为十六进制的()。
A.66 B.5A C.50 D.视具体的计算机而定A 3.右图是一棵二叉树,它的先序遍历是()。
A.ABDEFC B.DBEFAC C.DFEBCA D.ABCDEFD 4.寄存器是()的重要组成部分。
A.硬盘B.高速缓存C.内存D.中央处理器(CPU)B 5.广度优先搜索时,需要用到的数据结构是()。
A.链表B.队列C.栈D.散列表A 6.在使用高级语言编写程序时,一般提到的“空间复杂度”中的“空间”是指()。
A.程序运行时理论上所占的内存空间B.程序运行时理论上所占的数组空间C.程序运行时理论上所占的硬盘空间D.程序源文件理论上所占的硬盘空间C 7.应用快速排序的分治思想,可以实现一个求第K大数的程序。
假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度为()。
A.O(n2)B.O(n log n)C.O(n) D.O(1)D 8.为解决Web应用中的不兼容问题,保障信息的顺利流通,()制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。
A.微软 B.美国计算机协会(ACM) C.联台国教科文组织D.万维网联盟(W3C)B 9.体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。
每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。
这种站队的方法类似于()算法。
A.快速排序B.插入排序C.冒泡排序D.归并排序A 10.1956年()授予肖克利(William Shockley)、巴丁(John Bardeen)和布拉顿(Walter Brattain),以表彰他们对半导体的研究和晶体管效应的发现。
A.诺贝尔物理学奖B.约翰•冯•诺依曼奖C.图灵奖D.高德纳奖(Donald E.Knuth Prize)二、不定项选择题(共10题,每题1.5分,共计15分。
每题有一个或多个正确选项。
多选或少选均不得分。
)D C 1.如果根结点的深度记为1,则一棵恰有2011个叶子结点的二叉树的深度可能是()。
A.10 B.11 C.12 D.2011A B C D 2.在布尔逻辑中,逻辑“或”的性质有()。
A.交换律:P V Q = Q V PB.结台律:P V ( Q V R ) = ( P V Q ) V RC.幂等律:P V P = PD.有界律:P V 1 = 1 (1表示逻辑真)A B3.一个正整数在十六进制下有100位,则它在二进制下可能有()位。
A.399 B.400 C.401 D.404B C4.汇编语言()。
A.是一种与具体硬件无关的程序设计语言B.在编写复杂程序时,相对于高级语言而言代码量较大,且不易调试C.可以直接访问寄存器、内存单元、I/O端口D.随着高级语言的诞生,如今已完全被淘汰,不再使用B C 5.现有一段文言文,要通过二进制哈夫曼编码进行压缩。
简单起见,假设这段文言文只由4个汉字“之”、“乎”、“者”、“也”组成,它们出现的次数分别为700、600、300、400。
那么,“也”字的编码长度可能是()。
A.1 B.2 C.3 D.4A B D 6.生物特征识别,是利用人体本身的生物特征进行身份认证的一种技术。
目前,指纹识别、虹膜识别、人脸识别等技术己广泛应用于政府、银行、安全防卫等领域。
以下属于生物特征识别技术及其应用的是( )。
A .指静脉验证B .步态验证C .ATM 机密码验证D .声音验证C D7.对于序列“7、5、1、9、3、6、8、4”,在不改变顺序的情况下,去掉( )会使逆序对的个数减少3。
A .7B .5C .3D .6A 8.计算机中的数值信息分为整数和实数(浮点数)。
实数之所以能表示很大或者很小的数,是由于使用了( )。
A .阶码B .补码C .反码D .较长的尾数B C D9.对右图使用Dijkstra 算法计算S 点到其余各点的最短路径 长度时,到B 点的距离d[B]初始时赋为8,在算法的执行过程 中还会出现的值有( )。
A .3B .7C .6D .5B A C10.为计算机网络中进行数据交换而建立的规则、标准或约定的集合成为网络协议。
下列英文缩写中,( )是网络协议。
A .HTTPB .TCP/IPC .FTPD .WWW三、问题求解(共2题,每题5分,共计10分)1.平面图是可以画在在平面上,且它的边仅在顶点上才能相交的简单 无向图。
4个顶点的平面图至多有6条边,如右图所示。
那么,5个顶 点的平面图至多有___9___条边。
2.定义一种字符串操作,一次可以将其中一个元素移到任意位置。
举例说明,对于字符串”B C A”,可以将A 移到B 之前,变成字符串”ABC”。
如果要将字符串”DACHEBGIF”变成”ABCDEFGHI”,最少需要_____4___次操作。
四、阅读程序写结果(共4题,每题8分,共计32分)1.ConstSIZE = 100;varn, i, sum, x : integer;a : array[1..SIZE] of integer;beginreadln(n);fillchar(a, sizeof(a), 0);for i:= 1 to n dobeginread(x);inc(a[x]);end;i := 0;sum := 0;while sum < (n div 2 + 1) dobegininc(i);sum :=sum + a[i];end;writeln(i);end.输入:114 5 6 6 4 3 3 2 3 2 1输出:32.varn : integer;procedure f2(x, y : integer);forward;procedure f1(x, y : integer);beginif x < n thenf2(y, x + y);end;procedure f2(x, y : integer);beginwrite(x, ’’);f1(y, x + y);end;beginreadln(n);f1(0, 1);end.输入:30输出:_____________3.constV = 100;varvisited : array[1..v] of boolean;e : array[1..V, 1..V] of integer; n, m, ans, i, j, a, b, c : integer;procedure dfs(x, len : integer);varI : integer;beginvisited[x] := true;if len > ans thenans := len;for i := 1 to n doif (not visited[i]) and (e[x, i] <> -1) thendfs(i, len + e[x, i]);visited[x] := false;end;beginreadln(n, m);for i := 1 to n dofor j := 1 to n doe[i][j] := -1;for i := 1 to m dobeginreadln(a, b, c);e[a][b] := c;e[b][a] := c;end;for i := 1 to n dovisited[i] := false;ans := 0;for i := 1 to n dodfs(i, 0);writeln(ans);end.输入:4 61 2 102 3 203 4 304 1 401 3 502 4 60输出:__________4.constSIZE = 10000;LENGTH = 10;varsum : longint;n, m, i, j : integer;a : array[1..SIZE, 1..LENGTH] of integer;function h(u, v : integer) : integer;varans, i : integer;beginans := 0;for i := 1 to n doif a[u][i] <> a[v][i] theninc(ans);h := ans;end;beginreadln(n);filichar(a, sizeof(a), 0);m := 1;repeati := 1;while (i <= n) and (a[m][i] = 1) doinc(i);if i > n thenbreak;inc(m);a[m][i] :=1;for j := i + 1 to n doa[m][j] := a[m - 1][j];until false;sum :=0;for i := 1 to m dofor j := 1 to m dosum := sum + h(i, j);writeln(sum);end.输入:7输出:____________五、完善程序(第1题,每空2分,第2题,每空3分,共计28分)1. (大整数开方)输入一个正整数n(1≤n<10100),试用二分法计算它的平方根的整数部分。
constSIZE = 200;typehugeint = recordlen : integer;num : array[1..SIZE] of integer;end;//len表示大整数的位数;num[1]表示个位、num[2]表示十位,以此类推vars : string;i : integer;target, left, middle, right : hugeint;function times(a, b : hugeint) : hugeint:vari, j : integer;ans : hugeint;beginfilIchar(ans, sizeof(ans), 0);for i := 1 to a.1en dofor j := 1 to b.1en do___①___ := ans.num[i + j — 1] + a.num[i] * b.num[j];for i := 1 to a.len + b.1en dobeginans.num[i + 1] := ans.num[i + 1] + ans.num[i] div 10;___②___;if ans.num[a.1en + b.1en] > 0then ans.len := a.1en + b.1enelse ans.len :=a.1en + b.1en – 1;end;times := ans;end;function add(a, b : hugeint) : hugeint;vari : integer;ans : hugeint;beginfillchar(ans.num, sizeof(ans.num), 0);if a.1en > b.1enthen ans.len := a.1enelse ans.len := b.len;for i := 1 to ans.1en dobeginans.num[i] :=___③___;ans.num[i + 1] := ans.num[i + 1] + ans.num[i] div 10;ans.num[i] := ans.num[i] mod 10;end;if ans.num[ans.1en + 1] > 0then inc(ans.len);add:=ans;end;function average(a, b : hugeint) : hugeint;vari : integer;ans : hugeint;beginans := add(a, b);for i := ans.1en downto 2 dobeginans.num[i - 1] := ans.num[i - 1] + (___④___) * 10;ans.num[i] := ans.num[i] div 2;end;ans.num[i] := ans.num[i] div 2;if ans.num[ans.len] = 0then dec(ans.len);average := ans;end;function plustwo(a : hugeint) : hugeint;vari : integer;ans : hugeint;beginans := a;ans.num[1] := ans.num[1] + 2;i := 1;while(i <= ans.len) and (ans.num[i] >= 10) dobeginans.num[i + 1] := ans.num[i + 1] + ans.num[i] div 10;ans.num[i] := ans.num[i] mod 10;inc(i);end;if ans.num[ans.len + 1] > 0then___⑤___;plustwo := ans;end;function over(a, b : hugeint) : boolean;vari : integer;beginif(___⑥___)thenbeginover := false;exit;end;if a.1en > b.1en thenbeginover := true;exit;end;for i := a.len downto 1 dobeginif a.num[i] < b.num[i] thenbeginover := false;exit;end;if a.num[i] > b.num[i] thenbeginover := true;exit;end;end;over := false;end;’beginreadln(s);fillchar(target.num, sizeof(target.num), 0);target.1en := 1ength(s);for i := 1 to target.1en dotarget.num[i] := ord(s[target.1en – i + 1]) - ___⑦___; filichar(left.num, sizeof(1eft.num), 0);left.1en := 1;left.num[i] := 1;right := target;repeatmiddle := average(1eft, right);if over(___⑧___)then right := middleelse 1eft := middle;until over(plustwo(1eft), right);for i := left.1en downto 1 dowrite(1eft.num[i]);writeln;end.2. (笛卡尔树)对于一个给定的两两不等的正整数序列,笛卡尔树是这样的一棵二叉树:首先,它是一个最小堆,即除了根结点外,每个结点的权值都大于父节点的权值;其次,它的中序遍历恰好就是给定的序列。