多题目

阅读程序

//这题有点超纲,pass

01 #include <algorithm>

02 #include <iostream>

03 #include <limits>

04

05 using namespace std;

06

07 const int MAXN = 105; 

08 const int MAXK = 105;

09

10 int h[MAXN][MAXK];

11

12 int f(int n, int m)

13 {

14     if (m == 1) return n;

15     if (n == 0) return 0;

16

17     int ret = numeric_limits<int>::max();

18     for (int i = 1; i <= n; i++)

19         ret = min(ret, max(f(n - i, m), f(i - 1, m - 1)) + 1);

20     return ret;

21 }

22

23 int g(int n, int m)

24 {

25     for (int i = 1; i <= n; i++)

26         h[i][1] = i;

27     for (int j = 1; j <= m; j++)

28         h[0][j] = 0;

29

30     for (int i = 1; i <= n; i++) {

31         for (int j = 2; j <= m; j++) {

32             h[i][j] = numeric_limits<int>::max();

33             for (int k = 1; k <= i; k++)

34                 h[i][j] = min(

35                     h[i][j],

36                     max(h[i - k][j], h[k - 1

第1题 判断

当输入为“ 7 3 ”时,第 19 行用来取最小值的 min 函数执行了 449 次。( )

A.
正确
B.
错误

第2题 判断

输出的两行整数总是相同的。( )

A.
正确
B.
错误

第3题 判断

当 m 为 1 时,输出的第一行总为 n 。( )

A.
正确
B.
错误

第4题 单选

算法 g(n,m) 最为准确的时间复杂度分析结果为( )。

A.

B.

O(nm)

C.

D.

第5题 单选

当输入为“ 20 2 ”时,输出的第一行为( )。

A.

“ 4 ”

B.

“ 5 ”

C.

“ 6 ”

D.

“ 20 ”

第6题 单选

(4 分) 当输入为“ 100 100 ”时,输出的第一行为( )。

A.

“ 6 ”

B.

“ 7 ”

C.

“ 8 ”

D.

“ 9 ”

发表评论

登录 后再回复