#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分)第16行输出ans时,ans的值一定大于i。( )
(1分)程序输出的ans小于等于n。( )
若将第12行的“<”改为“!=”,程序输出的结果不会改变。( )
当程序执行到第16行时,若ans-i>2,则a[i+1]≦a[i]。( )
(3分)若输入的a数组是一个严格单调递增的数列,此程序的时间复杂度是( )。
0(log n)
0(n2)
0(nlog n)
0(n)
最坏情况下,此程序的时间复杂度是( )。
0(n2)
0(log n)
0(n)
0(nlog n)