Submission details
Task:Finding inverse
Sender:francden
Submission time:2025-11-15 22:21:41 +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.04 sdetails
#70.04 sdetails
#8ACCEPTED0.04 sdetails
#90.04 sdetails
#100.04 sdetails
#11ACCEPTED0.04 sdetails
#120.04 sdetails
#130.04 sdetails
#14ACCEPTED0.04 sdetails

Code

a , m = [int(x) for x in input().split()]
(s0,t0,r0) = (1,0,m)
(s1,t1,r1) = (0,1,a)
while r1 != 0:
    q = r0 // r1
    r0, r1 = r1, r0 - q*r1
    s0, s1 = s1, s0 - q*s1
    t0, t1 = t1, t0 - q*t1
if r0 != 1:
    print(-1)
else:
    inv = s0 % m
    print(inv)

Test details

Test 1

Verdict:

input
6 7

correct output
6

user output
1

Test 2

Verdict: ACCEPTED

input
0 7

correct output
-1

user output
-1

Test 3

Verdict:

input
5 78

correct output
47

user output
2

Test 4

Verdict:

input
89 99

correct output
89

user output
9

Test 5

Verdict: ACCEPTED

input
0 61

correct output
-1

user output
-1

Test 6

Verdict:

input
897 947

correct output
625

user output
305

Test 7

Verdict:

input
419 538

correct output
217

user output
369

Test 8

Verdict: ACCEPTED

input
32 938

correct output
-1

user output
-1

Test 9

Verdict:

input
184120 505187

correct output
438779

user output
24203

Test 10

Verdict:

input
264601 885661

correct output
360221

user output
778041

Test 11

Verdict: ACCEPTED

input
40310 590135

correct output
-1

user output
-1

Test 12

Verdict:

input
202254499 577081420

correct output
128866679

user output
531916449

Test 13

Verdict:

input
539836073 888851205

correct output
797044652

user output
55757914

Test 14

Verdict: ACCEPTED

input
697847215 756971670

correct output
-1

user output
-1