下面 init_sieve 函数的时间复杂度为:
for (int i=1;i<=n;i++) sieve[i]=i;
for (int i=2;i<=n;i++)
for (int j=i;j<=n;j+=i)
sieve[j]--;
- A. O(n)
- B. O(n log n)
- C. O(n²)
- D. 无法正常结束。
正确答案:B
for (int i=1;i<=n;i++) sieve[i]=i;
for (int i=2;i<=n;i++)
for (int j=i;j<=n;j+=i)
sieve[j]--;
正确答案:B
想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?
进入 GESPPASS 开始练习