892. [CSP2019 提高级] 第 20 题

[CSP2019 提高级] 第 20 题

二、阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填√错误填X;除特殊说明外,判断题 1.51.5 分,选择题 44分,共计 4040 分)

#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;
}

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

{{ select(1) }}

  • O(log⁡n)O(\log n)
  • O(n2)O(n^2)
  • O(nlog⁡n)O(n\log n)
  • O(n)O(n)