T446890 [主线任务] 分羊圈
题目背景
`Alexander_1` 在路边碰到了一位牧民,牧民正在花大价钱悬赏能帮他解决问题的人。乐于助人(~~贪爱钱财~~)的 `Alexander_1` 急忙跑去帮他(~~其实就是想挣钱~~)。
题目描述
牧民家里有一片草地,草地上有一个 $N$ 行 $M$ 列的矩形围栏。牧民打算把这片草地用栅栏分成若干等份,用以圈养羊。
* 牧民必须把这片草地完全用以圈养羊,不能有剩余。
* 牧民家的羊很挑剔,只能待在正方形的围栏中。所以牧民必须把这片草地分成若干个大小相等的正方形。
* 牧民必须要使分成的正方形数量尽量少,这样可以节省栅栏。
最少要多少个正方形才可以圈养羊?请你帮助 `Alexander_1` 解决这个问题(~~挣钱~~)。
输入格式
输入只包含一行。
第一行含有两个正整数 $N, M$。
输出格式
输出一行一个正整数,表示最少需要的正方形个数。
说明/提示
#### 样例1说明
如果正方形的边长为 $5$,那么长可以分出 $\displaystyle\frac{15}{5}=3$ 个正方形,宽可以分出 $\displaystyle\frac{10}{5}=2$ 个正方形。一共可以分出 $2 \times 3 = 6$ 个。不存在更优的划分方法。
#### 数据说明
* Subtask 0($50$ Points):
$1 \le N, M \le 10^9$。
* Subtask 1($10$ Points):
$1 \le N, M \le 10^{3072}$ 且满足 $N, M$ 互质。
* Subtask 2($40$ Points):
$1 \le N, M \le 10^{3072}$。