#4203. [GESP202312 八级 C++] 第 10 题

[GESP202312 八级 C++] 第 10 题

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

long long power_mod(long long a, long long n, long long mod) {
    if (n == 0)
        return 1;
    a = a % mod;
    if (n == 1)
        return a;
    long long pw = power_mod(a, n / 2, mod);
    long long pw2 = pw * pw % mod;
    if (n % 2 == 0)
        return pw2;
    return pw2 * a % mod;
}

{{ select(1) }}

  • O(n)O(n)
  • O(an)O(a^n)
  • O(log(n))O(\log(n))
  • O(log(n)×a)O(\log(n) \times a)