2006清华计算机复试上机真题详解:N阶乘与整数序列最大序列和

需积分: 0 0 下载量 123 浏览量 更新于2024-09-09 收藏 25KB DOCX 举报
清华大学2006年的计算机系研究生入学复试上机题包含两个部分,总分为100分,旨在考察考生的编程能力和问题解决能力。第一题要求计算给定正整数N的阶乘,分数占25分。具体规则如下: 1. 输入:一个不超过1000的正整数N。 2. 输出:N的阶乘结果。 3. 编程语言限制:C/C++。 4. 时间限制:每道测试数据1秒的运行时间。 5. 示例:程序需正确处理样例输入如4和15,输出对应阶乘结果24和1307674368000。 第二题是更复杂的问题,占35分,涉及动态规划和序列的最大子序列和计算。给定一个包含N个整数的序列,任务是找出其中非空连续子序列的最大和。变量条件如下: 1. N范围:1到1000000。 2. 整数范围:序列元素在(-2e63, 2e63-1)范围内。 3. 输入:第一行是N,接下来是N个整数。 4. 输出:序列中最大子序列和。 5. 时间限制:每道测试数据2秒的运行时间。 6. 编程语言和环境:同样使用C/C++,在Windows2000Professional+VisualStudio6.0环境下。 考生需要注意的是,不允许使用任何自带电子设备、参考书籍,必须自己生成测试数据进行程序验证,并确保程序能在指定时间内完成计算。编译后的可执行文件(如program1.exe和pr)是评分的关键,如果无法运行,将导致零分。考试期间,若遇到电脑故障,应及时报告。最后,考试结束后,考生需配合工作人员进行现场测试,不得立即离开。 这两道题目不仅测试了基础的数值计算能力,还考察了算法设计和优化技巧,对于想要报考清华大学计算机系的考生来说,理解和熟练掌握这些基础知识和编程技能至关重要。