342. Power of Four
El texto de la tarea se traduce del ruso para el idioma seleccionado. El código no cambia.
given entero n. return true, если оно является степенью числа четыре. В противном случае return false.
entero n является степенью числа четыре, если существует entero x такое, что n == 4^x.
Ejemplo
Input: n = 16
Output: true
C# solución
coincidente/originalpublic 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++ solución
borrador automático, revisar antes de enviar#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 solución
coincidente/originalpublic 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 solución
coincidente/originalvar 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 solución
coincidente/originalclass 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 является степенью четырех, если оно является степенью двух (только один бит установлен) и количество нулей после этого бита четно.
😎
Vacantes para esta tarea
Se muestran vacantes activas con etiquetas coincidentes.
Todavía no hay vacantes activas.