BETA

Difficulty Level: Easy

Total Submissions: 335 Accuracy:

35.82%

Modular multiplicative inverse
       

Given two integers ‘a’ and ‘m’, find modular multiplicative inverse of ‘a’ under modulo ‘m’.
Input:  a = 3, m = 11
Output: 4
Since (4*3) mod 11 = 1, 4 is modulo inverse of 3
One might think, 15 also as a valid output as "(15*3) mod 11" 
is also 1, but 15 is not in ring {0, 1, 2, ... 10}, so not valid.
Note: Print the smallest modular multiplicative inverse

Input:
First line consists of T test cases. Only line of every test case consists of 2 integers 'a' and 'm'.

Output:
Print the modular multiplicative inverse if exists else print -1.

Constraints:
1<=T<=100
1<=M<=100
1<=A<=M

Example:
Input:

2
3 11
10 17
Output:
4
12

** For More Input/Output Examples Use 'Expected Output' option **

Contributor: Saksham Raj Seth

Set Default Code

					   
It is recommended to 'Compile & Test' your code before clicking 'Submit'!

Compilation/Execution Result:

Need help with your code? Please use ide.geeksforgeeks.org, generate link and share the link here.