2023 CSP-S初赛 题目、答案、解析

前言

又到了CSP前夕,刷历年真题却发现没有题解,于是自己写了一篇

答案合集

题号
1~5 B A A C B
6~10 A C B A C
11~15 A C C B A
16~20 B
21~25 D D
26~30 B B
31~35 C B B B A
36~40 A D C D B
41~43 A C A 😛 😛

单项选择题

T1

在 Linux 系统终端中,以下哪个命令用于创建一个新的目录?
A. newdir
B. mkdir
C. create
D. mkfold

这题没什么好说的

T2

0 , 1 , 2 , 3 , 4 0,1,2,3,4 0,1,2,3,4 中选取 4 4 4 个数字,能组成()个不同四位数(注:最小的四位数是 1000 1000 1000 最大的四位数是 9999 9999 9999)。
A. 96 96 96
B. 18 18 18
C. 120 120 120
D. 84 84 84

最高位不能填 0 0 0,有四钟不同的情况,次高位不能填和最高位相同的数字,有四种不同的情况,再下一位不能和前两位相同,有三种情况,以此类推。

根据乘法原理,总共有 4 ∗ 4 ∗ 3 ∗ 2 = 96 4*4*3*2 = 96 4432=96种情况。要是不放心也可以枚举。

T3

假设 n n n 是图的顶点的个数, m m m 是图的边的个数,为求解某一问题有下面四种不同时间复杂度的算法。对于 m = Θ ( n ) m=\Theta{(n)} m=Θ(n) 的稀疏图而言,下面的四个选项,哪一项的渐近时间复杂度最小()。
A. O ( m log ⁡ n ∗ log ⁡ log ⁡ n ) O(m\sqrt{\log{n}} * \log{\log{n}}) O(mlogn loglogn)
B. O ( n 2 + m ) O(n^2+m) O(n2+m)
C. O ( n 2 log ⁡ m + m log ⁡ n ) O(\frac{n^2}{\log{m}} + m\log{n}) O(logmn2+mlogn)
D. O ( m + n log ⁡ n ) O(m + n\log{n}) O(m+nlogn)

对于这一题, “ m = Θ ( n ) m = \Theta{(n)} m=Θ(n)” 可以简单粗暴的理解为 m = n m=n m=n,这样一来就很好比较了。

T4

假设有 n n n 根柱子,需要按照以下规则依次放置编号为 1 , 2 , 3 , ⋯ 1,2,3,⋯ 1,2,3, 的圆环:每根柱子的底部固定,顶部可以放入圆环;每次从柱子顶部放入圆环时,需要保证任何两个相邻圆环的编号之和是一个完全平方数。请计算当有 4 4 4 根柱子时,最多可以放置()个圆环
A. 7 7 7
B. 9 9 9
C. 11 11 11
D. 5 5 5

首先,需要知道,“相邻圆环”指上下相邻。
然后手动贪心即可, 11 11 11个圆环的放法如下图所示:

T5

以下对数据结构的表述不恰当的一项是:
A. 队列是一种先进先出(FIFO)的线性结构
B. 哈夫曼树的构造过程主要是为了实现图的深度优先搜索
C. 散列表是一种通过散列函数将关键字映射到存储位置的数据结构
D. 二叉树是一种每个结点最多有两个子结点的树结构

A C D 显然正确
B 纯属胡言乱语,哈夫曼树是一种贪心,主要应用是哈夫曼编码,感兴趣的读者可以自行搜索。

T6

以下连通无向图中,()一定可以用不超过两种颜色进行染色
A. 完全三叉树
B. 平面图
C. 边双连通图
D. 欧拉图

“染色”即二分图,完全三叉树的染色方法为:把所有偶数层的节点染成一个颜色,奇数层的节点染成另一个颜色。

T7

最长公共子序列长度常常用来衡量两个序列的相似度。其定义如下:给定两个序列 X = x 1 , x 2 , x 3 , ⋯ , x m X=x_1,x_2,x_3,⋯,x_m X=x1,x2,x3,,xm Y = y 1 , y 2 , y 3 , ⋯ , y n Y=y_1,y_2,y_3,⋯,y_n Y=y1,y2,y3,,yn, 最长公共子序列(LCS)问题的目标是找到一个最长的新序列 Z = z 1 , z 2 , z 3 , ⋯ , z k Z=z_1,z_2,z_3,⋯,z_k Z=z1,z2,z3,,zk ,使得序列 Z Z Z 既是序列 X X X 的子序列,又是序列 Y Y Y 的子序列,且序列 Z Z Z 的长度 k k k 在满足上述条件的序列里是最大的。 (注:序列 A A A 是序列 B B B 的子序列,当且仅当在保持序列 B B B 元素顺序的情况下,从序列 B B B 中删除若干个元素,可以使得剩余的元素构成序列 A A A)则序列 ABCAAAABAABABCBABA 的最长公共子序列长度为()
A. 4
B. 5
C. 6
D. 7

最长公共子序列是ABCABAABAABA

T8

一位玩家正在玩一个特殊的掷骰子的游戏,游戏要求连续掷两次骰子,收益规则如下:玩家第一次掷出 x x x 点,得到 2 x 2x 2x 元;第二次掷出 y y y 点,当 y = x y=x y=x 时玩家会失去之前得到的 2 x 2x 2x 元而当 y ≠ x y \neq x y=x 时玩家能保住第一次获得的 2 x 2x 2x 元。上述 x , y ∈ 1 , 2 , 3 , 4 , 5 , 6 x,y \in 1,2,3,4,5,6 x,y1,2,3,4,5,6。 例如:玩家第 一次掷出 3 3 3 点得到 6 6 6 元后,但第二次再次掷出 3 3 3 点,会失去之前得到的 6 6 6 元,玩家最终收益为 0 0 0 元;如果玩家第一次掷出 3 3 3 点、第二次掷出 4 4 4 点,则最终收益是 6 6 6 元。假设骰子掷出任意一点的概率均为 1 6 \frac{1}{6} 61<

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值