2025年四川大学计算机复试上机真题解析
本篇整理了2025年四川大学计算机专业研究生复试中的两道上机编程题目,涵盖字符串处理与图形化输出两个方向,考察基础算法与代码实现能力。
点阵数字显示
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb
要求在字符界面中以点阵形式显示数字。每个数字占用5列7行的空间,数字之间用两个空格分隔。以下是各数字的点阵表示:
***** ? ? ?* ?***** ?***** ?* * ? * ?***** ?***** ?***** ?*****
* ? * ? ? ?* ? ?* ? ? * ? * ?* ? ?* ? ? ?* ?* ? * ?
* ? * ? ? ?* ? ?* ? ? * ? * ?* ? ?* ? ? ?* ?* ? * ?
* ? * ? ? ?***** ?***** ?***** ?***** ? ? ?* ?***** ?*****
* ? * ? ? ?* ? ?* ? ? ?* ? ?* ? ? ?* ?* ? * ? ? ?*
* ? * ? ? ?* ? ?* ? ? ?* ? ?* ? ? ?* ?* ? * ? ? ?*
***** ? ? ?* ?***** ?***** ? ?* ?***** ?***** ? ? ?* ?*****
其中“?”代表空格或其他占位符,实际输出应根据具体数字生成对应图案。
输入格式说明:
第一行为测试用例数量k(正整数),随后k行每行包含一个整数x(0 ≤ x ≤ 9999)。
输出格式说明:
对每个测试用例,先输出原数字x和英文冒号“:”,换行后输出该数字的点阵表示。每位数字间保留两个空格。若行末存在空格,也需保留。
样例输入:
复制
2
13
4950
样例输出:
复制
13:
* *****
* *
* *
* *****
* *
* *
* *****
4950:
* * ***** ***** *****
* * * * * * *
* * * * * * *
***** ***** ***** * *
* * * * *
* * * * *
* ***** ***** ***** *****
字符串编辑距离
题目描述
Time Limit: 1000 ms
Memory Limit: 256 mb
给定两个字符串A和B,求将字符串A转换为字符串B所需的最少操作步数。允许的操作包括:
- 替换:将A中的某个字符改为另一个字符;
- 插入:在A中任意位置插入一个字符;
- 删除:从A中删除一个字符。
举例说明:将"eat"变为"tea"。首字符'e' ≠ 't',此时可选择:
- 将'e'替换为't',花费1步;
- 在'e'前插入't',花费1步;
- 删除'e',再比较后续字符与目标串,同样计1步。
通过动态规划方法可以高效求解此类问题,状态转移方程基于上述三种操作进行递推。
输入格式说明:
输入两个字符串A和B,长度均小于1000。
输出格式说明:
输出一个整数,表示将A转化为B所需的最小操作次数。
样例输入:
复制
abcd
abc
样例输出:
复制
1
解释:只需删除'd'即可完成转换,因此结果为1。