Dados dos enteros, A y B , la tarea es encontrar si es posible hacer que A sea igual a B si se le permite restar un número primo P cualquier número de veces de A.
Ejemplos:
Entrada: A = 10, B = 4
Salida: SI
Explicación:
Sea P = 2 y después de restarlo
tres veces de A
Entrada: A = 41, B = 40
Salida: NO
Enfoque: La observación clave en el problema es que tenemos que representar el número A como
, Como sabemos, todo número es divisible por algún número primo excepto el 1. Por lo tanto, si encontramos la diferencia del número
y si la diferencia es mayor que 1, ambos números pueden igualarse restando un número primo X veces de A.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation to find if // it is possible to make a equal to b #include <bits/stdc++.h> using namespace std; // Function to find if // it is possible to make // A equal to B bool isPossible(int A, int B) { return (A - B > 1); } // Driver Code int main() { int A = 10, B = 4; // Function Call if (isPossible(A, B)) cout << "Yes"; else cout << "No"; return 0; }
Java
// Java implementation to find if // it is possible to make a equal to b class GFG{ // Function to find if // it is possible to make // A equal to B static boolean isPossible(int A, int B) { return (A - B > 1); } // Driver Code public static void main (String[] args) { int A = 10, B = 4; // Function Call if (isPossible(A, B)) System.out.print("Yes"); else System.out.print("No"); } } // This code is contributed by shivanisinghss2110
Python3
# Python3 implementation to find if # it is possible to make a equal to b # Function to find if # it is possible to make # A equal to B def isPossible(A, B): return (A - B > 1); # Driver Code A = 10; B = 4; # Function Call if (isPossible(A, B)): print("Yes"); else: print("No"); # This code is contributed by Code_Mech
C#
// C# implementation to find if // it is possible to make a equal to b using System; class GFG{ // Function to find if // it is possible to make // A equal to B static bool isPossible(int A, int B) { return (A - B > 1); } // Driver Code public static void Main() { int A = 10, B = 4; // Function Call if (isPossible(A, B)) Console.Write("Yes"); else Console.Write("No"); } } // This code is contributed by Code_Mech
Javascript
<script> // Javascript implementation to find if // it is possible to make a equal to b // Function to find if // it is possible to make // A equal to B function isPossible(A, B) { return (A - B > 1); } let A = 10, B = 4; // Function Call if (isPossible(A, B)) document.write("Yes"); else document.write("No"); </script>
Salida:
Sí
Sí