# Check if A can be converted to B by reducing with a Prime number

Given two integers, A and B, the task is to find whether it is possible to make A equal to B if you are allowed to subtract a prime number P any number of times from A.
Examples:

Input: A = 10, B = 4
Output: YES
Explanation:
Let P = 2 and after subtracting it
three times from A
Input: A = 41, B = 40
Output: NO

Approach: The key observation in the problem is we have to represent the number A as , As we know every number is divisible by some prime number except 1. Therefore if we find the difference of the number and if the difference is greater than 1 then both the number can be made equal by subtracting a prime number X times from A.
Below is the implementation of the above approach:

## C++

 `// C++ implementation to find if ` `// it is possible to make a equal to b ` ` `  `#include ` `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 `

Output:
Yes

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.