First, we will introduce how to calculate a ^ B
Calculate a ^ B using the fast power.
// Calculate a ^ B Import Java. io. *; import Java. util. *; public class main {int A, B, n; public static void main (string [] ARGs) {New Main (). work ();} void work () {A = 7; B = 561; n = 561; system. out. println (POW (A, B);} // calculate a ^ bint POW (int A, int B) {int sum = 1; while (B! = 0) {If (B & 1 )! = 0) sum = (sum * A); A = (A * A); B >>= 1;} return sum ;}}
Next we will introduce how to calculate (a ^ B) % N
In the same way, we use the above method.
// Calculate a ^ B % N import Java. io. *; import Java. util. *; public class main {int A, B, n; public static void main (string [] ARGs) {New Main (). work ();} void work () {A = 7; B = 561; n = 561; system. out. println (POW (a, B) % N);} // calculate a ^ B % N int POW (int A, int B) {int sum = 1; while (B! = 0) {If (B & 1 )! = 0) sum = (sum * A) % N; A = (A * A) % N; B >>= 1 ;}return sum ;}}