14 lines
347 B
Raku
14 lines
347 B
Raku
sub expmod(Int $a is copy, Int $b is copy, $n) {
|
|
my $c = 1;
|
|
repeat while $b div= 2 {
|
|
($c *= $a) %= $n if $b % 2;
|
|
($a *= $a) %= $n;
|
|
}
|
|
$c;
|
|
}
|
|
|
|
say expmod
|
|
2988348162058574136915891421498819466320163312926952423791023078876139,
|
|
2351399303373464486466122544523690094744975233415544072992656881240319,
|
|
10**40;
|