1295. Find Numbers with Even Number of Digits
Дан arreglo чисел nums. return количество чисел в arregloе, которые содержат четное количество цифр.
Ejemplo:
Input: nums = [12,345,2,6,7896]
Output: 2
Explanation:
12 contains 2 digits (even number of digits).
345 contains 3 digits (odd number of digits).
2 contains 1 digit (odd number of digits).
6 contains 1 digit (odd number of digits).
7896 contains 4 digits (even number of digits).
Therefore only 12 and 7896 contain an even number of digits.
C# solución
coincidente/originalpublic class Solution {
private bool HasEvenDigits(int num) {
int digitCount = 0;
while (num > 0) {
digitCount++;
num /= 10;
}
return (digitCount & 1) == 0;
}
public int FindNumbers(int[] nums) {
int evenDigitCount = 0;
foreach (int num in nums) {
if (HasEvenDigits(num)) {
evenDigitCount++;
}
}
return evenDigitCount;
}
}
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:
private bool HasEvenDigits(int num) {
int digitCount = 0;
while (num > 0) {
digitCount++;
num /= 10;
}
return (digitCount & 1) == 0;
}
public int FindNumbers(vector<int>& nums) {
int evenDigitCount = 0;
foreach (int num in nums) {
if (HasEvenDigits(num)) {
evenDigitCount++;
}
}
return evenDigitCount;
}
}
Java solución
coincidente/originalclass Solution {
private boolean hasEvenDigits(int num) {
int digitCount = 0;
while (num > 0) {
digitCount++;
num /= 10;
}
return (digitCount & 1) == 0;
}
public int findNumbers(int[] nums) {
int evenDigitCount = 0;
for (int num : nums) {
if (hasEvenDigits(num)) {
evenDigitCount++;
}
}
return evenDigitCount;
}
}
JavaScript solución
coincidente/originalclass Solution {
hasEvenDigits(num) {
let digitCount = 0
while (num > 0) {
digitCount++
num = Math.floor(num / 10)
}
return (digitCount & 1) === 0
}
findNumbers(nums) {
let evenDigitCount = 0
for (let num of nums) {
if (this.hasEvenDigits(num)) {
evenDigitCount++
}
}
return evenDigitCount
}
}
Algorithm
Определите вспомогательную функцию hasEvenDigits, которая принимает num в качестве Entradaных данных и returns true, если количество цифр четное, иначе returns false.
Внутри функции hasEvenDigits. Инициализируйте переменную digitCount значением 0. Пока num не равно нулю: Увеличивайте digitCount на 1. Делите num на 10. Возвращайте digitCount & 1 == 0.
В функции findNumbers. Инициализируйте переменную evenDigitCount значением 0. Для каждого числа num в arregloе nums, проверяйте, returns ли hasEvenDigits(num) значение true. Если да, увеличивайте evenDigitCount на 1. Возвращайте evenDigitCount.
😎
Vacantes para esta tarea
Se muestran vacantes activas con etiquetas coincidentes.