Submission details
Task:Finding inverse
Sender:tjaa
Submission time:2025-11-16 17:26:22 +0200
Language:Python3 (PyPy3)
Status:READY
Result:
Test results
testverdicttime
#10.04 sdetails
#2ACCEPTED0.04 sdetails
#30.04 sdetails
#40.04 sdetails
#5ACCEPTED0.04 sdetails
#60.05 sdetails
#70.04 sdetails
#8ACCEPTED0.04 sdetails
#9--details
#10--details
#11ACCEPTED0.04 sdetails
#12--details
#13--details
#14ACCEPTED0.04 sdetails

Code

import sys
from math import gcd

x, m = map(int, sys.stdin.readline().split())

def totient(n):
    phi = n
    x = 2
    while(x*x <= n):
        if(n%x == 0):
            phi -= phi // x
            while(n%x == 0):
                n //= x
        x += 1
    if n > 1:
        phi -= phi // n 
    return phi


if gcd(x, m) == 1:
    print(pow(x, totient(m)-1))
else:
    print(-1)

Test details

Test 1

Verdict:

input
6 7

correct output
6

user output
7776

Test 2

Verdict: ACCEPTED

input
0 7

correct output
-1

user output
-1

Test 3

Verdict:

input
5 78

correct output
47

user output
11920928955078125

Test 4

Verdict:

input
89 99

correct output
89

user output
103278611857003616688625589179...
Truncated

Test 5

Verdict: ACCEPTED

input
0 61

correct output
-1

user output
-1

Test 6

Verdict:

input
897 947

correct output
625

user output
244826642427757934828629859462...
Truncated

Test 7

Verdict:

input
419 538

correct output
217

user output
135252135836214146383876450442...
Truncated

Test 8

Verdict: ACCEPTED

input
32 938

correct output
-1

user output
-1

Test 9

Verdict:

input
184120 505187

correct output
438779

user output
(empty)

Test 10

Verdict:

input
264601 885661

correct output
360221

user output
(empty)

Test 11

Verdict: ACCEPTED

input
40310 590135

correct output
-1

user output
-1

Test 12

Verdict:

input
202254499 577081420

correct output
128866679

user output
(empty)

Test 13

Verdict:

input
539836073 888851205

correct output
797044652

user output
(empty)

Test 14

Verdict: ACCEPTED

input
697847215 756971670

correct output
-1

user output
-1