
注意事项: 1. 试题共三题,总计100分,考试时间为2小时整。 2. 不得使用自带的电子设备,包括笔记本、U盘、手机等;不得使用参考书籍和资料。 3. 编程环境为Windows 2000 Professional + Visual Studio 6.0,只能使用C/C++语言。 4. 每一题的输入数据都从文件Input.txt
注意事项:
1. 试题共三题,总计100分,考试时间为2小时整。
2. 不得使用自带的电子设备,包括笔记本、U盘、手机等;不得使用参考书籍和资料。
3. 编程环境为Windows 2000 Professional + Visual Studio 6.0,只能使用C/C++语言。
4. 每一题的输入数据都从文件Input.txt中读取,将结果输出至文件Output.txt,请严格按照每一题的输入输出格式。在考试过程中,我们恕不提供除试题中样例以外的测试数据,请自行生成输入数据以对程序进行自测。
5. 请在考试结束之前自行设置编译环境和配置编译参数,将所写的程序编译成可执行文件,文件名在每一题中都有规定。生成的可执行文件将作为最终测试的唯一依据,若无法运行您的可执行文件,最终成绩将记为零分。
6. 程序对每个测试数据的可用运行时间上限为每一题中规定的“运行时限”,若超时或结果错误,则该测试用例不得分。
7. 在考试过程中,若计算机出现故障,请及时通知工作人员,以免耽误您的考试时间。
8. 上机考试结束后,请勿马上离开,工作人员将会直接进行现场测试,需要您的合作。
试题一(5个测试数据,每个5分,共25分)
求N的阶乘
变量条件:N为正整数,且N≤1000。
运行时限:1秒/测试数据。
输入格式:仅一个数,N。
输出格式:仅一个数,N!的结果。
可执行文件:program1.exe
样例一:
Input.txt
4
Output.txt
24
样例二:
Input.txt
15
Output.txt
1307674368000
试题二(7个测试数据,每个5分,共35分)
给出一个整数序列S,其中有N个数,定义其中一个非空连续子序列T中所有数的和为T的“序列和”。对于S的所有非空连续子序列T,求最大的序列和。
变量条件:N为正整数,N≤1000000,结果序列和在范围(-2e63,2e63-1)以内。
运行时限:2秒/测试数据
输入格式:第一行为一个正整数N,第二行为N个整数,表示序列中的数。
输出格式:仅一个整数,表示最大序列和。
可执行文件:program2.exe
样例一:
Input.txt
5
1 5 -3 2 4
Output.txt
9
解释:子序列“1,5,-3,2,4”具有最大的序列和,9=1+5+(-3)+2+4
样例二:
Input.txt
6
1 -2 3 4 -10 6
Output.txt
7
解释:子序列“3,4”具有最大的序列和,7=3+4
样例三:
Input.txt
4
-3 -1 -2 -5
Output.txt
-1
解释:子序列“-1”具有最大的序列和,-1=-1
试题三(8个测试数据,每个5分,共40分)
二叉树的前序、中序、后序遍历的定义:
前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树;
中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树;
后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根。
给定一棵二叉树的前序遍历和中序遍历,求其后序遍历(提示:给定前序遍历与中序遍历能够唯一确定后序遍历)。
变量条件:二叉树中的结点名称以大写字母表示:A,B,C.最多26个结点。
运行时限:1秒/测试数据。
输入格式:两行,第一行为前序遍历,第二行为中序遍历。
输出格式:若不能根据前序和中序遍历求出后序遍历,输出NO ANSWER;否则输出一行,为后序遍历。
可执行文件:program3.exe
样例一:
Input.txt
ABC
BAC
Output.txt
BCA
样例二:
Input.txt
FDXEAG
XDEFAG
Output.txt
XEDGAF
样例三:
Input.txt
ABCD
BDAC
Output.txt
NO ANSWER
[1] [2] [3] 下一页