Saltar al contenido

Compruebe si existen algunos enteros positivos X e Y para que P^X sea igual a Q^Y

Ver discusión

Mejorar artículo

Guardar artículo

me gusta el articulo

Ver discusión

Mejorar artículo

Guardar artículo

me gusta el articulo

dados dos enteros pags y qla tarea es comprobar si algunos (P, F) igual o no, y un par es igual si hay algunos enteros positivos X y Y como eso pagsX = QY.

Ejemplos:

Aporte: P = 16, Q = 4
Salida:
Explicación: Sean X = 2 e Y = 4. Entonces PX = 162 = 256 y QY = 44 = 256 . Entonces el par (16,4) es igual.

Aporte: P = 12, Q = 24
Salida: no

Acercarse: El problema se puede resolver con base en la siguiente observación:

En frente de pagsX = QY para que sea verdadero para un número entero (X, Y), uno de los siguientes debe ser verdadero:

  1. Debe existir un entero K tal que
  2. X = Y = 0

Para implementar esto ahora, se puede usar el siguiente algoritmo:

  • Encuentre el número máximo (max) y mínimo (min) para dos números enteros.
  • Repita un bucle y verifique si max y min son iguales o max es divisible por min, entonces el par de enteros es igual y el bucle se rompe.
  • De lo contrario, el par de enteros no es igual.

A continuación encontrará la implementación del enfoque anterior.

Java

 

import java.io.*;

import java.util.*;

 

public class GFG {

 

    

    

    public static void check(int p, int q)

    {

        int max = Math.max(p, q);

        int min = Math.min(p, q);

        while (true) {

            if (max == min) {

                System.out.println("Yes");

                break;

            }

            if (max % min != 0) {

                System.out.println("No");

                break;

            }

            int temp = max / min;

            max = Math.max(temp, min);

            min = Math.min(temp, min);

        }

    }

 

    

    public static void main(String[] args)

    {

        int P = 16;

        int Q = 4;

 

        

        check(P, Q);

    }

}

Complejidad del tiempo: A)
cuarto auxiliar: O(1)