Problem from https://coj.uci.cu/24h/problem.xhtml?pid=3850 exponial(n) = n^(exponial(n-1))
How to calculate exponial(n) mod M?
| # | User | Rating |
|---|---|---|
| 1 | Benq | 3676 |
| 2 | Kevin114514 | 3659 |
| 3 | jiangly | 3640 |
| 4 | turmax | 3450 |
| 5 | tourist | 3382 |
| 6 | strapple | 3360 |
| 7 | Um_nik | 3354 |
| 8 | squareOf105 | 3348 |
| 9 | maroonrk | 3312 |
| 10 | idontwannadothis…e | 3191 |
| # | User | Contrib. |
|---|---|---|
| 1 | Qingyu | 156 |
| 2 | nik_exists | 151 |
| 3 | maspy | 149 |
| 4 | AmShZ | 145 |
| 5 | Um_nik | 143 |
| 6 | Errichto | 139 |
| 7 | BledDest | 136 |
| 8 | adamant | 135 |
| 9 | maroonrk | 132 |
| 10 | cry | 130 |
Problem from https://coj.uci.cu/24h/problem.xhtml?pid=3850 exponial(n) = n^(exponial(n-1))
How to calculate exponial(n) mod M?
| Name |
|---|



You can use Euler theorem to prove that
.
Even then, it is still O(N log M) right?
It should be much lower than that. Here is a code that implements this problem. I've written it just now.
An idea which might help to prove why it works is that
(for a composite c).
L.E.: According to A007755 it seems that the iterated euler totient function takes O(logC) iterations and an iteration takes
time.
We can stop when reach c = 1
Can you prove it? For example, a = 2, b = 5, c = 8 is a counterexample.
Well, a and c have to be co-prime. Seems like it's not the case here though.
Yes, it is the reason because of I chose that example. However, Can it be used to solve the problem? I mean, exponial(n) and m may not be coprime. I think that you can still solve the problem for each prime factor of m, but I was not sure if it would be optimal.
As it says on the online judge, this is from NCPC '16. You can find the solutions here: https://ncpc.idi.ntnu.no/ncpc2016/