历年华中科技大学计算机保研机试真题 - PGCode考研平台

最后更新:2025-12-08

历年华中科技大学计算机保研机试真题

本文整理华中科技大学计算机保研机试真题,并提供详细解析与代码实现,帮助同学们了解保研机试的难度与题型分布

梅森素数

题目描述

我们将满足 $ M = 2^k - 1 $ 的素数称为梅森素数,其中 $ k $ 也需要为某一素数。

比如 $ 3 = 2^2 - 1 $ 即满足这个条件,但是 $ 2^{11} - 1 = 2047 = 23 \times 89 $ 就不是梅森素数。

给定一个数 $ M $,顺序求出所有不大于 $ M $ 的梅森素数。

输入格式

一个整数 $ M $。

输出格式

每行输出一个梅森素数,格式为 M(k) = M,其中 $ k $ 是素数,$ M $ 是梅森素数。

输入样例

97

输出样例

M(2) = 3
M(3) = 7
M(5) = 31

字符串密码生成

题目描述

给定一个整数 $n$,之后有 $n$ 个字符串。

针对每个字符串,将数据 $6$ 个为一组进行分组,最后一组可能不满 $6$ 个。

比如字符串 huazhongU,将其分为 huazhongU,然后求出 $6$ 个数字,每个数字分别为对应位置上的字母 $ASCII$ 码的和。

比如 h + n = $214$,u + g = $220$,得到如下 $6$ 个数字:$214$, $220$, $182$, $122$, $104$, $111$。

之后,针对每个数字,按照数位求和,如果求和结果超过一位,重复执行这个过程直到结果仅为 $1$ 位。

如 $182$ => $1 + 8 + 2 = 11$ => $1 + 1 = 2$。

对 $6$ 个数字分别操作后的结果即为最后的密码。

注意,每个字符串可能有任意长度。

输入格式

第一行输入一个整数 $n$,表示字符串的数量。

接下来的 $n$ 行,每行一个字符串。

输出格式

输出 $n$ 行,每行一个 $6$ 位数字,表示对应字符串的密码。

输入样例

2
huazhongU
shangjiaoU

输出样例

742553
431647

有趣的数

题目描述

我们把一个数称为有趣的,当且仅当:

因此,符合我们定义的最小的有趣的数是 $2013$。

除此以外,$4$ 位的有趣的数还有两个:$2031$ 和 $2301$。

输入多个 $n$,请计算恰好有 $n$ 位的有趣的数的个数。

你需要连续处理一系列的输入,当输入的为 $0$ 的时候,输入截止。

由于答案可能非常大,只需要输出答案除以 $1000000007$ 的余数。

输入格式

多个整数 $n$,每行一个。

当 $n = 0$ 时输入截止。

输出格式

对于每个输入的 $n$,输出恰好有 $n$ 位的有趣的数的个数除以 $1000000007$ 的余数。

输入样例

4
6
0

输出样例

3
85

回文字符串

题目描述

给出一个长度不超过 $1000$ 的字符串,判断它是不是回文(顺读,逆读均相同)。

输入格式

输入包括一行字符串,其长度不超过 $1000$。

输出格式

可能有多组测试数据,对于每组数据,如果是回文字符串则输出 $Yes!$,否则输出 $No!$。

输入样例

hellolleh
hellowor1d

输出样例

Yes!
No!

字符串处理

题目描述

无冗余的输入一个字符串。

(1) 输出该字符串。

(2) 对于不是首次出现的字符,对其进行过滤,例如 $abcdacdef$,过滤后为 $abcdef$。

(3) 对于字符 $0-9$,$A-F$,$a-f$,将其对应的 $ASCII$ 码的低 $4$ 位进行对调,例如将 $1011$,转换为 $1101$,并将对应的 $ASCII$ 码对应的字符输出,若为字母,转换为大写。

输入格式

输入一个字符串。

输出格式

第一行输出原字符串。

第二行输出过滤后的字符串。

第三行输出处理后的字符串。

输入样例

abcdacdef

输出样例

abcdacdef
abcdef
01101000
104 H
01100100
100 D
01101100
108 L
01100010
98 B
01101010
106 J
01100110
102 F

完整题目及在线评测:https://www.pgcode.cn/