「MCOI-02」Convex Hull 凸包
题目背景
一场比赛需要一道签到题。
题目描述
Leasier 玩 MC 被逮到了,所以他只好算出下面这个式子的值。
$$\displaystyle\sum_{i = 1}^n \sum_{j = 1}^m \tau(i) \tau(j) \tau(\gcd(i, j))$$
由于结果可能很大,所以你只需要求出结果对 $p$ 取模的值。
如果您对本题的数学符号有疑问,请到「提示」区查看提示。
输入输出格式
输入格式
一行,三个整数 $n, m, p$。
输出格式
一行,一个整数,表示所求的值。
输入输出样例
输入样例 #1
5 7 9
输出样例 #1
5
说明
#### 数据规模和约定
**本题开启捆绑测试。**
| Subtask | $n, m$ | 分值 |
| :------: | :------: | :------: |
| $1$ | $1 \leq n, m \leq 10^3$ | $15 \operatorname{pts}$ |
| $2$ | $1 \leq n, m \leq 10^5$ | $25 \operatorname{pts}$ |
| $3$ | $1 \leq n, m \leq 10^6$ | $30 \operatorname{pts}$ |
| $4$ | 无特殊限制 | $30 \operatorname{pts}$ |
对于 $100\%$ 的数据,$1 \leq n, m \leq 2 \times 10^6$,$1 \leq p \leq 10^9$。
#### 提示
作为对萌新友好的签到题,肯定是要给提示的。
- $\sum$ 为求和符号,比如 $\displaystyle\sum_{i = 1}^n i$ 代表 $1 + 2 + \cdots + n$。
- $\tau$ 表示约数个数,比如 $\tau(6) = 4$。
- $\gcd$ 是最大公约数,比如 $\gcd(12, 15) = 3$。
#### 说明
Minecraft OI Round 2 A
- Maker:Leasier
- Tester:happydef