342. Power of Four
given số nguyên n. return true, если оно является степенью числа четыре. В противном случае return false.
số nguyên n является степенью числа четыре, если существует số nguyên x такое, что n == 4^x.
Ví dụ
Input: n = 16
Output: true
C# lời giải
đã khớp/gốcpublic class Solution {
public bool IsPowerOfFour(int n) {
if (n <= 0) return false;
double log_n_base_4 = Math.Log(n) / Math.Log(4);
return log_n_base_4 == Math.Floor(log_n_base_4);
}
}
C++ lời giải
bản nháp tự động, xem lại trước khi gửi#include <bits/stdc++.h>
using namespace std;
// Auto-generated C++ draft from the C# solution. Review containers, LINQ and helper types before submit.
class Solution {
public:
public bool IsPowerOfFour(int n) {
if (n <= 0) return false;
double log_n_base_4 = Math.Log(n) / Math.Log(4);
return log_n_base_4 == Math.Floor(log_n_base_4);
}
}
Java lời giải
đã khớp/gốcpublic class Solution {
public boolean isPowerOfFour(int n) {
if (n <= 0) return false;
double log_n_base_4 = Math.log(n) / Math.log(4);
return log_n_base_4 == Math.floor(log_n_base_4);
}
}
JavaScript lời giải
đã khớp/gốcvar isPowerOfFour = function(n) {
if (n <= 0) return false;
const log_n_base_4 = Math.log(n) / Math.log(4);
return log_n_base_4 === Math.floor(log_n_base_4);
};
Python lời giải
đã khớp/gốcclass Solution:
def isPowerOfFour(self, n: int) -> bool:
if n <= 0:
return False
import math
log_n_base_4 = math.log(n, 4)
return log_n_base_4.is_integer()
Algorithm
Проверка неотрицательности:
Убедитесь, что n больше нуля, так как степени числа четыре всегда положительны.
Проверка логарифмом:
Используйте логарифм для проверки, является ли number степенью четырех. number n является степенью четырех, если логарифм n по основанию 4 является целым numberм.
Проверка побитовым оператором:
number является степенью четырех, если оно является степенью двух (только один бит установлен) и количество нулей после этого бита четно.
😎
Vacancies for this task
việc làm đang hoạt động with overlapping task tags are đã hiển thị.