ST表算法与代码实现

对于区间最值也就是 RMQ(Range Minimum/Maximum Query)问题,可以使用ST表(稀疏表)的方式进行离线预处理。ST表思想与原理ST表的核心思想是倍增。


【题解】排列计数

题目描述求有多少种 1 到 n 的排列 a,满足序列恰好有 m 个位置 i,使得 ai=ia_i = iai​=i。答案对 109+710^9 + 7109+7 取模。输入格式本题单测试点内有多组数据。输入的第一行是一个整数 T,代表测试数据的整数。以下 T 行,每行描述一组测试数据。对于每组测试数


乘法逆元

定义ax≡1 mod pa x \equiv 1\ mod \ pax≡1 mod p这里xxx就是aaa的逆元。一个数有逆元的充分必要条件是gcd(a,p)=1,此时逆元唯一存在。求解逆元的方式拓展欧几里若m不为质数,可以使用拓展欧几里得求逆元根据裴蜀定理,若gcd(a,b)=1则gcd是a,b两


【题解】乘法逆元2

题目描述给定 n 个正整数 aia_iai​ ,求它们在模 p 意义下的乘法逆元。由于输出太多不好,所以将会给定常数 k,你要输出的答案为:∑i=1nkiai\sum\limits_{i=1}^n\frac{k^i}{a_i}i=1∑n​ai​ki​答案对 p 取模。输入格式第一行三个正整数 n,p


【题解】矩阵快速幂(分治+代数)

题目背景矩阵快速幂题目描述给定 n×nn\times nn×n 的矩阵 A,求 AkA^kAk。输入格式第一行两个整数 n,k 接下来 n 行,每行 n 个整数,第 i 行的第 j 的数表示 Ai,jA_{i,j}Ai,j​。输出格式输出 AkA^kAk共 n 行,每行 n 个数,第 i 行第 j