#2028. 松鼠吃果子

松鼠吃果子

松鼠吃果子

题目描述

树上共有 NN 个果子,从下到上排成一列,编号为 1,2,,N1,2,\dots,N。一只松鼠从最下面的果子开始向上跳,并按照如下规则行动:

  • ii 次跳跃时,它会向上跳过i×i×imod5+1i \times i \times i \bmod 5 + 1 个果子
  • 然后吃掉当前脚下的一个果子
  • 如果上方还有果子,那么在重力作用下,上面的果子都会整体向下掉一格

例如:

  • 11 次跳时,跳过 1×1×1mod5+1=21 \times 1 \times 1 \bmod 5 + 1 = 2 个果子,可以落到第 33 个果子并吃掉它
  • 22 次跳时,从新的位置继续,跳过 2×2×2mod5+1=42 \times 2 \times 2 \bmod 5 + 1 = 4 个果子,可以落到第 88 个果子并吃掉它

总会有某一次跳跃,松鼠跳出了果子串顶端。设这是第 KK 次跳,那么这次它吃不到果子。此时它会回到最下面的果子上,重新执行它的第 KK 次跳,以便继续吃果子。

请你求出:松鼠吃掉的第 MM 个果子的编号。题目保证答案一定存在。


输入格式

从标准输入按以下格式读取数据:

NN

MM

其中:

  • 第一行输入整数 NN
  • 第二行输入整数 MM

输出格式

输出一行一个整数,表示松鼠吃掉的第 MM 个果子的编号。


数据范围

  • 1MN10001 \le M \le N \le 1000

样例

10
4
9

样例解释

松鼠依次吃掉的果子编号为:3,8,5,93,8,5,9。其中第 33 次和第 44 次跳跃都需要在跳出顶部后回到最下面重新执行。