Categorías
Algorithms

LeetCode – Agregar dígitos (Java)

Dado un número entero no negativo, agregue repetidamente todos sus dígitos hasta que el resultado tenga solo un dígito.

Por ejemplo:

Dado num = 38, el proceso es como: 3 + 8 = 11, 1 + 1 = 2. Dado que 2 tiene solo un dígito, devuélvalo.

Solución Java 1 – Recusión

public int addDigits(int num) {
    int sum=0;
 
    String s = String.valueOf(num);
    for(int i=0; i<s.length(); i++){
        sum = sum + (s.charAt(i)-'0');
    }
 
    if(sum < 10){
        return sum;
    }else{
        return addDigits(sum);
    }
}

Solución Java 2 – Matemáticas

public int addDigits(int num) {
    return num - 9*((num-1)/9);
}

  LeetCode - Flip Game II (Java)

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *