历年武汉大学计算机保研机试真题
本文整理武汉大学计算机保研机试真题,并提供详细解析与代码实现,帮助同学们了解保研机试的难度与题型分布
区间内最近的质数对
题目描述
给定两个正整数 $L$ 和 $R$($1 \leq L \leq R \leq 10^6$),请找出区间 $[L, R]$ 中距离最近的两个不同质数(即两个质数的差的绝对值最小)。若存在多对距离相同的质数对,选择数值较小的那对;若区间内质数数量少于 $2$ 个,输出 -1 -1。
输入格式
一行两个整数 $L$ 和 $R$
输出格式
一行两个整数,表示距离最近的质数对(从小到大);若无则输出 -1 -1
数据范围
$1 \leq L \leq R \leq 10^6$
输入样例
10 20
输出样例
11 13
柱状图中最大的矩形
题目描述
给定 $n$ 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 $1$。请计算在该柱状图中,能够勾勒出来的矩形的最大面积。
输入格式
第一行包含整数 $n$ ($1 \leq n \leq 10^5$)
第二行包含 $n$ 个整数,表示柱子的高度 $heights$ ($0 \leq heights[i] \leq 10^4$)
输出格式
输出一个整数,表示最大矩形的面积。
数据范围
$1 \leq n \leq 10^5$
$0 \leq heights[i] \leq 10^4$
输入样例
6
2 1 5 6 2 3
输出样例
10
夜间过桥问题
题目描述
有 $n$ 个人需要在夜间过一座独木桥,每次最多只能有两个人一起过桥,且必须持有手电筒。手电筒只有一个,因此过桥后必须有人将手电筒送回。每个人过桥的时间不同,第 $i$ 个人的过桥时间为 $t_i$(过桥时间以较慢的人为准)。求所有人都过桥的最短时间。
输入格式
第一行包含整数 $n$($1 \leq n \leq 1000$)
第二行包含 $n$ 个整数,表示每个人的过桥时间 $t_i$(按非递减顺序排列,$t_i \geq 1$)
输出格式
输出一个整数,表示所有人都过桥的最短时间。
数据范围
$1 \leq n \leq 1000$
$1 \leq t_i \leq 100$
输入样例
4
1 2 5 10
输出样例
17
矩阵行调整
题目描述
输入一个 $N$ ($N \leq 10$) 阶方阵,按照如下方式调整方阵:
-
将第一列中最大数所在的行与第一行对调。
-
将第二列中从第二行到第 $N$ 行最大数所在的行与第二行对调。
-
依此类推,直到第 $N-1$ 列中从第 $N-1$ 行到第 $N$ 行最大数所在的行与第 $N-1$ 行对调。
-
输出调整后的方阵。
输入格式
包含多组测试数据,每组测试数据第一行为一个整数 $N$,表示方阵的阶数。
接下来输入这个 $N$ 阶方阵。
输出格式
调整后的方阵。
输入样例
4
3687
6753
8653
9872
输出样例
9872
6753
3687
8653
数字字符串相加
题目描述
给定两个数字字符串 $s1$ 和 $s2$,若输入 $s1$ 和 $s2$ 非全数字字符串,则显示输入错误;否则计算 $s1$ 与 $s2$ 相加后的结果,存放于 $s3$ 并显示。
输入格式
输入两个字符串 $s1$ 和 $s2$,每个字符串长度不超过 $200$。
输出格式
若输入合法,输出相加后的结果字符串 $s3$;否则输出"输入错误"。
输入样例
999999999999999999999999999999999999999999
1
输出样例
1000000000000000000000000000000000000000000