Skip to content

CSP-S 2021阅读程序 T2T3及完善程序T1

Published: at 04:06

阅读程序T2


判断题

1

答案:正确 解析:通过第 3131 行可知,solve(1,n).j即为 (1+n)>>1。然后我就不知道了,但是这道题一个是一个问题有多个解决代码,所以我猜是正确的。

2

答案:错误 解析:可以自己手算几组数据,然后会发现当 n<0n < 0 时,,两行代码都只会执行一次。

3

数据是 5 -10 11 -9 5 -7

答案:错误 解析:这里有 n=5n=5,最大字段和是 1111

单选题

4

答案:B 解析:这题很像一个二分,每次递归相当于分成两半处理,以此类推,递归次数总共是 O(n)\Omicron(n)

5

答案:C 解析:和第四题差不多,但是分成两半后每次的额外运算时间是 O(n)\Omicron(n),总共要分 log(n)\log(n) 次。

6

数据是 10 -3 2 10 0 -8 9 -4 -5 9 4

答案:B 解析:这里 n=10n=10,最大字段和是 1717

阅读程序T3


判断题

1

答案:正确 解析:第一行输出不必多说,第二行的输出是根据 opt 来编码/解码一个字符串,所以是正确的。

2

答案:正确 解析:这个程序实现了一个字符串的编码/解码,那肯定是正确的啊,哪有编码了一个字符串解码回去不是同一个字符串的道理(迫真)。

3

答案:错误(不确定) 解析:不知为何,看到这个等于号就感觉不对😅。

单选题

这个好像是 Base 64 编码/解码?

4

答案:B 解析:无论是 decode 还是 encode,它的 for 循环语句的操作都是 O(1)\Omicron(1) 的,循环次数也都是 nn 次。

5

答案:不会 解析:这个模拟太烦了。

6

答案:不会 解析:烦死模拟了

完善程序T1


1

答案:D 解析:感觉 FiF_i 存的是得到 ii 所需要的数字 44 数量。

2

答案:A 解析:visivis_i 用于记录 ii 是否已经找到最优解好了。循环里是计算最优解,那么循环条件就是还没计算出最优解,所以选 A。

3

答案:不会 解析:无

4

答案:C(不确定) 解析:是不是要找到一个最优解再往后面传递啊?