天天快乐编程2020年OI集训队 训练8-普及组题解

一、单项选择

1. 答案:D

解析:Cache是高速缓存,集成在CPU内,RAM为内存,ROM为外存,依次越来越便宜,速度也越来越慢。

2. 答案:B

解析:RAM就是内存,断电就会消失。

3. 答案:B

解析:计算内的设备是通过总线连接的。

4. 答案:A

解析:64个二进制位,也就是64/8字节

5. 答案:C

解析:2 ^ 8为256,0~255每个数字表示一种颜色。

6. 答案:C

解析:QQ是通讯聊天软件,不属于操作系统。

7. 答案:D

解析:哈希表可以随机访问。

8. 答案:D

解析:分r>f或f>r分别是r-f和r-f+n,即为D

9. 答案:D

解析:由于线段两端相同,增加两只不同鸟,可以产生两条或四条两端不同小鸟的线段。增加N只不同小鸟,由于线段两端是相同鸟,通过对称排列,必定是偶数个两端为不同小鸟的线段。

10. 答案:C

解析:选择排序的基本思想:每次从待排序的记录中选择出关键码值最小(或最大)的记录,顺序放在已排序的记录序列的一端,直到全部排完。也可以用排除法排除其他三项。

11. 答案:A

解析:树叶+分支节点=总结点

12. 答案:D

解析:一般来说,可执行文件没有扩展名。 Linux与Windows不同,不是根据扩展名来区分文件类型的。 事实上,Linux下的文件不需要扩展名。一切皆文件,包含设备文件、目录文件、普通文件等。

13. 答案:B

解析:虚拟内存属于软件

14. 答案:D

解析:入栈顺序与出栈顺序相反,因此入栈顺序中8在51后面: 90在87的前面: 20在14的前面:25在6的后面:19在90的前面。

15. 答案:A

解析:度数之和为偶数

二、阅读程序

1. 这是我们比较熟悉的递归之一,汉诺塔。汉诺塔是将n-1个盘子先借助C从A移动到B,再把第n个盘子从A移动到B,再把n-1个盘子从借助A从B移动到C。

1)答案:错

解析:n=0程序无法结束

2)答案:错

解析:若为1,仅输出1行,共输出2 ^ n -1行

3)答案:对

解析:程序不改变

4)答案:对

解析:只有n==1才会进入判断,输出1即可

5)答案:D

解析:递归n层,每层2个分支

6)答案:B

解析:n=4输出15行,n>4输出>15行,n=0死循环

2.仅仅是个二重循环的题目,每次都会*5,然后通过高精度进行计算,最终却输出0.1,可以猜测是输出0.5的n次方的高精度

1)答案:错

解析:是0.5 ^ n

2)答案:错

解析:最后执行循环i=1,i=0才不满足循环条件了。

3)答案:对

解析:对10进行取余,肯定在0~9之间

4)答案:错

解析:末尾没有多余的0,* 5不会得到0,想得到0还要有因子2

5)答案:B

解析:al最大为n

6)答案:B

解析:0.5 ^ 3=0.125

3.这是一个二分搜索的题目,需要自己对二分搜素有一定的理解,而且这样二分是很多同学还没见过的

1)答案:对

解析:最远距离不可能为0,所以起始为1也可以

2)答案:对

解析:fl>fr程序才会结束

3)答案:错

解析:找到了还会继续找大的,ans>=mid

4)答案:错

解析:表示至少为dis

5)答案:C

解析:二分要执行logl次,每次还都要进行check,check循环n次,乘起来即可。

6)答案:B

解析:即使不懂这个算法,不想模拟,也可以按照题目条件找到正确答案。
三、完善程序

1.Dijkstra是比较重要的图论算法之一,代码也比较长,是贪心的思想,每次找到最小的层层扩展

1)答案:C

解析:自己到自己的距离为0

2)答案:A

解析:dij需要初始化为最大值

3)答案:A

解析:quanzhi(权值)是(point1 , point2)的边权

4)答案:B

解析:用dis[j]更新最短距离

5)答案:C

解析:松弛,到v的距离即到u的距离再加上u到v的距离

2.完全背包是一个非常常见的一个算法,利用到了动态规划思想。

1)答案:A

解析:初始化为0,表示0件物品装容量为j的最大价值为0

2)答案:A

解析:第一重循环枚举个数,每个物品分别是不是要放进背包。

3)答案:C

解析:从小到大,依次看能不能装下。

4)答案:D

解析:dp转移的过程中取最大值

5)答案:B

解析:经过循环后,dp[j]表示5个物品容量为j的最大价值

posted @ 2020-10-05 14:52  暴力都不会的蒟蒻  阅读(165)  评论(0编辑  收藏  举报