#CSPJSH15Q21. 珅泽教育CSP-J第一轮模拟考第十五套 第 21 题

珅泽教育CSP-J第一轮模拟考第十五套 第 21 题

二、阅读程序(判断题每题1分,选择题每题3分,共计40分;判断题正确填 T,错误填 F)

第1题

int solve(int n, int a[], int b[])
{
    std::sort(a, a + n);
    std::sort(b, b + n);

    int ans = std::abs(a[0] - b[0]);
    int i = 0, j = 0;

    while (i < n && j < n)
    {
        if (a[i] < b[j])
        {
            int diff = b[j] - a[i];
            if (ans > diff)
                ans = diff;
            i++;
        }
        else
        {
            int diff = a[i] - b[j];
            if (ans > diff)
                ans = diff;
            j++;
        }
    }
    return ans;
}

程序的时间复杂度为( )。

{{ select(1) }}

  • Θ(n2)\Theta(n^2)
  • Θ(nlogn)\Theta(n\log n)
  • Θ(n)\Theta(n)
  • Θ(log2n)\Theta(\log^2 n)