不是VIP会员,不能显示答案

题目解答

题目:
#include <iostream>

using namespace std;



const int N = 1001;



int n, a[N], s[N][N];



int main() {

cin >> n;

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

cin >> a[i];

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

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

int L = j, R = j + i - 1;

s[L][R] = s[L + 1][R] + s[L][R - 1] - s[L + 1][R - 1] + (a[L] > a[R]);

}

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

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

cout << s[i][j] << endl;

}




判断题

1) 如果输入n的值为1000,并且1 <= a[i] <= n,程序不会发生运行错误。( )

2) 该程序时间复杂度为Θ(n^2)。( )

3) 第12行将循环初始条件修改为i = 1, 程序对于n = 1000的数据能够正确输出。( )




选择题

4) 当n = 10时,第14行会被执行( )次。

5) 当n = 5,a数组对应输入数据为:{1,3,5,3,4},则下列选项说法正确的是( )。


考点:
分析:
解答:
评论:
老师: