2023CSP-S第一轮提高组初赛真题解析

一、单项选择题(共15题,每题2分,共计30分;每题有且仅有一个正确选项)

1. 在Linux系统终端中,以下哪个命令用于创建一个新的目录?(     )

A. newdir

B. mkdir

C. create

D. mkfolder

答案:B,计算机基础,Linux的基础操作知识。

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

A. 96

B. 18

C. 120

D. 84

答案:A,组合计数,分步,千位有4种选择,百位4种,十位3种,个位2种,乘法原理,4*4*3*2=96。

3. 假设n是图的顶点的个数,m是图的边的个数,为求解某一问题有下面四种不同时间复杂度的算法。对于m=θ(n)的稀疏图而言,下面的四个选项,哪一项的渐近时间复杂度最小。

A. O(m√logn·loglogn ) 

B. O(n²+m)

C. O(n²/logm+mlogn)

D. O(m+nlogn)

答案:A,图论,m和n同一级别,可以把所有的m换成n来比较,loglogn<√logn,所以A<D<C<B。

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

A. 7

B. 9

C. 11

D. 5

答案:C,模拟整个过程,我们发现,每次放圆环都只有一个选择,假设柱子为ABCD,则A1 B2 C3 D4 D5 C6 B7 A8 B9 C10 D11。

5. 以下对数据结构的表述不恰当的一项是(     )

A. 队列是一种先进先出(FIFO)的线性结构

B. 哈夫曼树的构造过程主要是为了实现图的深度优先搜索

C. 散列表是一种通过散列函数将关键字映射到存储位置的数据结构

D. 二叉树是一种每个结点最多有两个子结点的树结构

答案:B,数据结构,哈夫曼树跟DFS没有关联。构造哈夫曼树是一个贪心的过程,可以用来编码压缩。

6. 以下连通无向图中,(     )一定可以用不超过两种颜色进行染色

A. 完全三叉树

B. 平面图

C. 边双连通图

D.欧拉图

答案:A,图论,染色问题是同一条边的两个点用不用的颜色。树是一种二分图(两种颜色即可),或者可以试想一下每一层用不同的颜色。

7. 最长公共子序列长度常常用来衡量两个序列的相似度。其定义如下:给定两个序列X={×1,×2,X3,…,xm}和Y={y1,y2,y3,…,yn},最长公共子序列(LCS)问题的目标是找到一个最长的新序列Z={z1,z2,z3,…,zk},使得序列Z既是序列X的子序列,又是序列Y的子序列,且序列Z的长度k在满足上述条件的序列里是最大的。(注:序列A是序列B的子序列,当且仅当在保持序列B元素顺序的情况下,从序列B中删除若干个元素,可以使得剩余的元素构成序列A。)则序列“ABCAAAABA”和“ABABCBABA”的最长公共子序列长度为(     )

A. 4

B. 5

C. 6

D. 7

答案:C,动态规划,可以肉眼来看,先匹配头尾的AB和ABA,长度为5,剩下CAAA和ABCB只有一个可取。

8. 一位玩家正在玩一个特殊的掷骰子的游戏,游戏要求连续掷两次骰子,收益规则如下:玩家第一次掷出x点,得到2x元;第二次掷出y点,当y=x时玩家会失去之前得到的2x元,而当y≠x时,玩家能保住第一次获得的2x元。上述x,y∈{1,2,3,4,5,6}。例如:玩家第一次掷出3点得到6元后,但第二次再次掷出3点,会失去之前得到的6元,玩家最终收益为0元;如果玩家第一次掷出3点、第二次掷出4点,则最终收益是6元。假设骰子掷出任意一点的概率均为1/6,玩家连续掷两次骰子后,所有可能情形下收益的平均值是多少?(     )

A. 7元

B. 35/6

C. 16/3

D. 19/3

答案:B,概率和期望,假设第一次是a,则5/6的可能性获得2a,1/6的可能性获得0,期望收益是2a*5/6=5a/3,而第一次的期望(1+2+3+4+5+6)/6=7/2,所以5/3*7/2=35/6。

9. 假设我们有以下的C++代码:

图片

请问,res的值是什么?(     )

提示:在C++中,逻辑运算的优先级从高到低依次为:逻辑非(!)、逻辑与(&&)、逻辑或(||)。位运算的优先级从高到低依次为:位非(~)、位与(&)、位异或(^)、位或(I)

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值