阅读程序T2
判断题
1
答案:正确
解析:通过第 行可知,solve(1,n).j
即为 (1+n)>>1
。然后我就不知道了,但是这道题一个是一个问题有多个解决代码,所以我猜是正确的。
2
答案:错误 解析:可以自己手算几组数据,然后会发现当 时,,两行代码都只会执行一次。
3
数据是
5 -10 11 -9 5 -7
答案:错误 解析:这里有 ,最大字段和是 。
单选题
4
答案:B 解析:这题很像一个二分,每次递归相当于分成两半处理,以此类推,递归次数总共是 。
5
答案:C 解析:和第四题差不多,但是分成两半后每次的额外运算时间是 ,总共要分 次。
6
数据是
10 -3 2 10 0 -8 9 -4 -5 9 4
答案:B 解析:这里 ,最大字段和是 。
阅读程序T3
判断题
1
答案:正确
解析:第一行输出不必多说,第二行的输出是根据 opt
来编码/解码一个字符串,所以是正确的。
2
答案:正确 解析:这个程序实现了一个字符串的编码/解码,那肯定是正确的啊,哪有编码了一个字符串解码回去不是同一个字符串的道理(迫真)。
3
答案:错误(不确定) 解析:不知为何,看到这个等于号就感觉不对😅。
单选题
这个好像是 Base 64 编码/解码?
4
答案:B
解析:无论是 decode
还是 encode
,它的 for
循环语句的操作都是 的,循环次数也都是 次。
5
答案:不会 解析:这个模拟太烦了。
6
答案:不会 解析:烦死模拟了
完善程序T1
1
答案:D 解析:感觉 存的是得到 所需要的数字 数量。
2
答案:A 解析: 用于记录 是否已经找到最优解好了。循环里是计算最优解,那么循环条件就是还没计算出最优解,所以选 A。
3
答案:不会 解析:无
4
答案:C(不确定) 解析:是不是要找到一个最优解再往后面传递啊?