组合题

#include <cstdio>

using namespace std;

int n;

int a[100];


int main( ) {

scanf(“%d”,&n);

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

scanf(“%d”,&a[i])

int ans = 1

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

if ( i > 1 && a[i] < a[i-1])

ans = i ;

while (ans < n && a[i] >= a[ans+1])

++ans;

printf(“%d/n”, ans);

}

return 0;

}

第1题 判断题

(1分)第16行输出ans时,ans的值一定大于i。( )

A 正确
B 错误
第2题 判断题

(1分)程序输出的ans小于等于n。( )

A 正确
B 错误
第3题 判断题

若将第12行的“<”改为“!=”,程序输出的结果不会改变。( )

A 正确
B 错误
第4题 判断题

当程序执行到第16行时,若ans-i>2,则a[i+1]≦a[i]。( )

A 正确
B 错误
第5题 单选题

(3分)若输入的a数组是一个严格单调递增的数列,此程序的时间复杂度是( )。

A

0(log n)

B

 0(n2)

C

0(nlog n)

D

0(n)

第6题 单选题

最坏情况下,此程序的时间复杂度是( )。

A

0(n2)

B

0(log n)

C

0(n)

D

0(nlog n)

赣ICP备20007335号-2