Big Mod algorithm simply use the modular arithmetic to find the value of-
Big Mod recursive approach-
Big Mod Iterative approach-
(a^p)%m.
Big Mod recursive approach-
int bigmod ( long long a, int p, int m ) { if ( p == 0 )return 1; // If power is 0 ( a ^ 0 ), return 1 if ( p & 1 ) // If power is odd { return ( ( a % m ) * ( bigmod ( a, p - 1, m ) ) ) % m; } else { long long tmp = bigmod ( a, p / 2, m ); return ( tmp * tmp ) % m; } }
Big Mod Iterative approach-
long long bigmod ( long long a, long long p, long long m ) { long long res = 1; long long x = a; while ( p ) { if ( p & 1 ) //p is odd { res = ( res * x ) % m; } x = ( x * x ) % m; p = p >> 1; } return res; }
Thank you so much.
ReplyDeleteThank you so much brother.
ReplyDeletethank you bro.
ReplyDelete