Tugas Anda adalah memberikan dua angka bilangan bulat, a
dan b
menghitung inversi multiplikatif modular dari modulo b, jika ada.
Kebalikan modular dari a
modulo b
adalah angka c
sedemikian rupa sehingga ac ≡ 1 (mod b)
. Angka ini adalah modulo unik b
untuk setiap pasangan a
dan b
. Ini ada hanya jika pembagi umum terbesar dari a
dan b
adalah 1
.
The halaman Wikipedia untuk invers perkalian modular dapat dikonsultasikan jika Anda memerlukan informasi lebih lanjut tentang topik.
Masukan dan keluaran
Input diberikan sebagai dua bilangan bulat atau daftar dua bilangan bulat. Program Anda harus menampilkan angka tunggal, invers multiplikatif modular yang ada dalam interval 0 < c < b
, atau nilai yang menunjukkan tidak ada invers. Nilai dapat berupa apa saja, kecuali angka dalam kisaran (0,b)
, dan mungkin juga merupakan pengecualian. Namun nilai harus sama untuk kasus-kasus di mana tidak ada invers.
0 < a < b
dapat diasumsikan
Aturan
- Program harus selesai pada titik tertentu, dan akan menyelesaikan setiap kasus uji dalam waktu kurang dari 60 detik
- Celah standar berlaku
Uji kasus
Test case di bawah ini diberikan dalam format, a, b -> output
1, 2 -> 1
3, 6 -> Does not exist
7, 87 -> 25
25, 87 -> 7
2, 91 -> 46
13, 91 -> Does not exist
19, 1212393831 -> 701912218
31, 73714876143 -> 45180085378
3, 73714876143 -> Does not exist
Mencetak gol
Ini adalah kode golf, jadi kode terpendek untuk setiap bahasa menang.
Ini dan ini adalah pertanyaan yang serupa, tetapi keduanya menanyakan situasi tertentu.