SP32878 NKDIV - N..K..Divide

题目描述

Mona 和 Alaa 在玩一个游戏,规则如下: - 定义一个函数 $D(n)$,使得 $n$ 的素数分解中不同素数的个数。 - 由 $R$ 轮组成,在每一轮中有两个整数 $n$ 和 $k$。 - 每轮由多个回合组成。 - 每个人轮流上场。(上一轮赢的人开始,第一轮由 Mona 开始) - 玩家可选择一个数 $m$,使得 $2\le m\le n$、$m$ 能整除 $n$ 且 $D(m)\le k$。上场的玩家拿不出这个数就算输。 - 最后,赢的次数最多的为游戏的获胜者(如果平局,则 Mona 被视为获胜者)。

输入格式

第一行,输入 $R$($1\le R\le10$)。 接下来 $R$ 行,输入 $n,k$($1\le n\le10^{14},1\le k\le10$)。

输出格式

$R+2$ 行。 $1$ 至 $R$ 行为这一轮谁胜(`Mona` 或 `Alaa`),用空格间隔开。 第 $R+1$ 行为一个空格。 第 $R+2$ 行,为这一整场谁胜。 ### 输入样例 ``` 5 3 4 6 2 6 1 9 1 18 2 ``` ### 输出样例 ``` Mona Mona Alaa Alaa Alaa Alaa ```