luogu#P15921. [TOPC 2023] Exponentiation

    ID: 16044 远端评测题 3000ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>数学2023Special Judge矩阵加速ICPC台湾

[TOPC 2023] Exponentiation

题目描述

幂运算是将底数提升至某个指数以得到结果的数学运算。在表达式 ana^n 中,aa 是底数,nn 是指数,表示将 aa 自乘 nn 次。该运算的结果称为 aann 次幂。例如,23=2×2×2=82^3 = 2 \times 2 \times 2 = 852=5×5=255^2 = 5 \times 5 = 25。在这些例子中,第一个例子中 2 是底数、3 是指数,第二个例子中 5 是底数、2 是指数。幂运算是数学中的基本运算,广泛应用于各种场景,如解方程和密码学。

在许多密码算法中,特别是那些基于数论的算法(如 RSA 和 Diffie-Hellman),模幂运算是基本操作。模幂运算涉及底数对指数进行幂运算后再对模数取模。该运算计算量较大,但即使对非常大的数字来说也相对容易实现。

x+1x=αx + \frac{1}{x} = \alpha,其中 α\alpha 是正整数。请编写一个程序,对给定的正整数 β\betamm,计算 xβ+1xβmodmx^\beta + \frac{1}{x^\beta} \mod m

输入格式

输入仅一行,包含三个空格分隔的正整数 α\alphaβ\betamm

输出格式

输出 xβ+1xβmodmx^\beta + \frac{1}{x^\beta} \mod m。如果存在多个解,你可以输出 00m1m-1 之间的任意一个。

1 2 3
2
5 4 321
206
3 3 333
18
8 8 888

626

提示

注意

xx 可以是复数。例如,若 α=1\alpha = 1,则 xx1+3i2\frac{1+\sqrt{3}i}{2}13i2\frac{1-\sqrt{3}i}{2}。但本题中 xβ+1xβx^\beta + \frac{1}{x^\beta} 始终是整数。

α\alphaβ\betamm 均为小于 2642^{64} 的正整数。你可以假设 xβ+1xβx^\beta + \frac{1}{x^\beta} 是整数。

翻译由 DeepSeek V3.2 完成