下面 count_triple 函数的时间复杂度为( )。int gcd(int m, int n) { if (m == 0) return n; return gcd(n % m, m); } int count_triple(int n) { int cnt = 0; for (int v = 1; v * v * 4 <= n; v++) for (int u = v + 1; u * (u + v) * 2 <= n; u += 2) if (gcd(u, v) == 1) { int a = u * u - v * v; int b = u * v * 2; int c = u * u + v * v; cnt += n / (a + b + c); } return cnt; }
A. O(n^2)
B. O(n^2logn)
C. O(nlogn)
D. O(n)
正确答案:D
试卷来源:202509 CCF-GESP编程能力等级认证C++七级真题