LeetCode 1295. estadístico número par de dígitos a digital (Descripción C ++)

1295. estadístico número par de dígitos a digitales

Dificultad simplemente
darle una matriz de enteros nums, regresa al lugar donde la mediana de un número par de números.

Ejemplo 1:

De entrada: nums = [12,345,2,6,7896]
de salida: 2
Explicación:
12 es 2 dígitos (número de bits es un número par)
345 3 dígitos (dígitos es impar)
2 es un 1-bit digital (dígitos impares )
6 es un número impar de dígitos)
7896 4 dígitos (número de bits es un número par)
para que sólo el 7896 es de 12 bits y un número aún

Ejemplo 2:

De entrada: nums = [555,901,482,1771]
de salida: 1
Explicación:
Sólo mediana del número 1771 es un número par.

consejos:

1 <= nums.length <= 500
1 <= nums [i] <= 10 ^ 5

Ver este problema cuando el primer pensamiento es a través de un bucle para determinar el número de bits de cada número, y luego un juez, el código es:

class Solution {
public:
    int solove(int num){
        int re = 0;
        while(num){
            num /= 10;
            re++;
        }
        return re;
    }
    int findNumbers(vector<int>& nums) {
        int ans = 0;
        for(int i = 0; i < nums.size(); i++)
            if(solove(nums[i]) % 2 == 0)
                ans++;
        return ans;
    }
};

Esta pregunta es una muy plus solo tema, sólo tenemos que conseguir que se realice un número de bits de juzgar, por supuesto, no hay paso de profundidad de optimizar la eficiencia del tiempo, la eficiencia del tiempo todavía hay espacio para la optimización de

Publicados 153 artículos originales · ganado elogios 247 · Vistas a 20000 +

Supongo que te gusta

Origin blog.csdn.net/qq_43422111/article/details/105179875
Recomendado
Clasificación