OSN-K Informatika 2026
Waktu: 1000 ms
•
Memori: 256 MB
Perhitungan Pangkat Cepat Modulo
Diberikan tiga bilangan bulat positif $A$, $B$, dan $M$. Hitunglah nilai dari $(A^B) \pmod{M}$.
Karena nilai $B$ bisa sangat besar, Anda wajib menggunakan teknik *binary exponentiation* / *fast modular exponentiation* dengan kompleksitas waktu $O(\log B)$.
Format Masukan:
Tiga bilangan bulat $A, B, M$ dipisahkan oleh spasi.
Format Keluaran:
Sebuah baris berisi hasil $(A^B) \pmod{M}$.
Batasan:
1 <= A, B <= 10^{18}, 1 <= M <= 10^9
Contoh Masukan & Keluaran:
Contoh #1
2^10 = 1024. 1024 mod 1000 = 24
Input:
2 10 1000
Output:
24
Contoh #2
5^3 = 125. 125 mod 13 = 8 (karena 13*9=117)
Input:
5 3 13
Output:
8
solution.cpp
(C++17 / GCC)
Tekan Uji Coba (Run) untuk menguji sampel atau Kirim Solusi (Submit) untuk penilaian penuh.
Sedang mengeksekusi dan menilai kode di compiler terisolasi...
Compiler Output / Log:
Keluaran Program (Stdout):