Programa Java para encontrar el número perdido

Bob es un niño pequeño y acaba de aprender a contar números. Se sentó en su casa y comenzó a jugar con su número de juguetes. Tenía algunos números de n juguetes a su izquierda y la cuenta de esos n juguetes en la mano derecha. De repente su madre lo llamó, él mezcló todos los números y se fue. Cuando volvió se dio cuenta que se le olvidó la cuenta de los números que estaba teniendo. Dados todos los números de juguete, ayúdelo a encontrar el valor de n si está presente en la array o imprima -1.

Ejemplos

Entrada : 5 7 4 3 2 6

Salida : 5

Explicación : hay 6 números de juguete, de los cuales uno es la longitud, por lo tanto, imprimimos 5.

Entrada : 10 14 11 15

Salida : -1

Explicación : hay 4 números de juguete, pero no tenemos 3 como valor en la array, por lo tanto, imprimimos -1.

Acercarse

La solución es bastante simple. Podemos simplemente tomar la entrada en una string y contar la cantidad de espacios, que será la longitud real de la array.

Algoritmo

  1. Tome la entrada como una string.
  2. Cuente el número de espacios presentes en la string.
  3. Si el número de espacios presentes es igual a cualquiera de los elementos presentes en la array, imprima ese número; de lo contrario, imprima -1.
  4. Para encontrar si el elemento está presente o no, usamos el método string.indexOf() .

¿Como funciona?

  • Cuando tomamos la entrada como una string, el número de elementos presentes en la string es igual al número de espacios presentes +1.
  • El número real de elementos es igual al número de elementos presentes en la string -1.

Respuesta requerida = número de espacios +1 -1 = número de espacios

Implementación :

Java

// Java program to find the lost count
  
import java.util.*;
public class GFG {
  
    // find lost count
    public static void findLostCount(String s)
    {
  
        // counting the number of elements using the split
        // function -1
        int count = s.split(" ").length - 1;
  
        // if the value count is present then print count
        // else print -1
        if (s.indexOf(Integer.toString(count)) != -1)
            System.out.println("Number of elements "
                               + count);
        else
            System.out.println(-1);
    }
  
    public static void main(String args[])
    {
        Scanner in = new Scanner(System.in);
  
        // Taking input as string
        String s = "5 7 4 3 2 6";
  
        findLostCount(s);
    }
}
Producción

Number of elements 5

Publicación traducida automáticamente

Artículo escrito por sankcan55 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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