- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2019CCF非专业级别软件能力认证第一轮
(CSP-J)入门级参考答案
一、单项选择题(共15题,每题2分,共计30分)
1
2
3
4
5
6
7
8
9
10
A
D
C
A
A
D
C
C
B
C
11
12
13
14
15
C
A
C
B
A
二、阅读程序(除特殊说明外,判断题1.5分,单选题3分,共计40分)
第1题
判断题(填√或×)
单选题
1)
2)
3)
4)
5)
6)
×
√
×
√
B
B
第2题
判断题(填√或×)
单选题
1)
2)
3)
4)
5)
6)
√
×
×
×
A
A
第3题
判断题(填√或×)
单选题
1)
2)
3)
4)
5)
6)(4分)
×
√
A
D
D
B
三、完善程序(单选题,每小题3分,共计30分)
第1题
第2题
1)
2)
3)
4)
5)
1)
2)
3)
4)
5)
C
D
B
B
B
B
D
C
A
B
2019 CSP-J 第一轮 答案解析
一:
.cn:中国的顶级域名是 .cn,概念性知识,但大家注册的时候其实对这个后缀非常熟悉了,rg.noi.cn
01 0010 1000 0011:与运算是有 0 就为 0,都是 1 才是 1,所以比较快速的做法是看有没有 0。
4:1 Byte = 8 bits
s=a-c:过去考过类似的,既然是做了 c 次 -1,自然等价于 -c。
7:1(50),2(25),3(13),4(7),5(4),6(2),7(1)
可随意访问任一元素:链表要访问到某个元素,必须一个个找过去。
18:我们保证放法升序就能没有遗漏枚举了,实际考场中采用此方法是最稳妥的,可以避免推错。8,17,26,35,44,116,125,134,224,233,1115....当然从这里我们也能发现递推方程。
15:非常良心的考了原题,跟坐标是1,往右依次就是 3、7、15
97:这个就没啥说的了。。
29:如果辗转相除啥的可能会比较麻烦,最简单的方式就是验证一下四个选项是否除得尽。
2400:阅读理解题,做法就按照说法来跑就好。
4:抽屉原理,最坏情况就是最平均的情况,123412341234,还有一张必然会构成4。
75:xyzyx 模式,其中 z 必须是(0,1,8)中的一个,y必须是(0,1,8,6,9)中的一个,前面是 6 后面就是 9,x 同 y,所以乘法原理后就是,3*5*5=75
ABDEGHJCFI:经典的内容,在后序遍历找根然后在中序遍历划分左右子树即可。
图灵奖:果然有你
二 -(1)
x:输入的字符并没有什么限制。
√:我们下面索引用到了 i-1
x:在 isqrt(n) 时也是存在因子的
√:这个程序在做的就是特定位置小写转大写。
6:只有 18 的因子的位置会被判断是否需要转换,共 6 个
100000:验证每个选项,发现另外三个因子数明显没有36
二 -(2)
非常绕的一道题,也是让大家叫苦连天的题。到底在做什么呢?很快能发现 a 与 b 数组在做的是建立 x~y 的链接,设置的时候也是对称设置的。
如果 x 原来对应的 a[x] 比新的 y 小,并且 y 原来对应的 b[y] 比新的 x 小,那么把原来的对应关系清空,建立新的关系。
√:只要有关系来,不管会不会覆盖,至少不会关系全空。
x:看上去是对称的,但是因为有可能 x=1 对应着 y=2,那么做到 i==1 时 a[1]==2,b[1]==0;
x:如果我们建立了 2~3 与 3~2 两组关系明显就可以了。
x:15 行是在清楚原来 x 所对应的关系,和题目表述没啥联系。
2n-2m:此时不会发生覆盖的情况,每组链接都被做了。
2n-2:最后只会保留一组关系
二 -(3)
经验丰富的同学会看出来,这里就是在建立一颗树,每次找到当前区间最小值的位置作为根,然后划分左右做下一层。
最后的返回值非常重要,返回的是左边的值+右边的值+深度*当前根权值,其实就是根节点权值为1,后续按照深度定权值
x:题目中找最小值有多个相等的话是随便选一个,不会有问题的
√:b数组是每个点的 value,a 数组是每个点的 key,最后计算是计算value*depth,所以b数组全 0 结果就是全 0
5000:每一层都要做一次,最坏情况下是一开始有序,每次都是第一个是根,所以要做 100 层,第一次 100 次,每层次数 -1,1+2+3+...+100 = 5050
600:最好情况下就是每次都二分,层数应该是 log2(100),也就是6左右。此时每层都差不多100个(后面随着有的点做了根会略少)。
385:最坏情况就是1*1+2*2+3*3....,手算一下,很快发现选择385.
580:最好情况就是刚好每次都二分,那么 100 个节点的每层节点数量就是 (1,2,4,8,1
文档评论(0)