#265. 小猫分鱼

小猫分鱼

小猫分鱼

题目描述

海滩上有一堆鱼,NN 只小猫来分。第一只小猫把这堆鱼平均分为 NN 份,多了 ii 个(i<Ni<N),这只小猫把多的 ii 个扔入海中,拿走了一份。第二只小猫接着把剩下的鱼平均分成 NN 份,又多了 ii 个,小猫同样把多的 ii 个扔入海中,拿走了一份。第三、第四、……,第 NN 只小猫仍是最终剩下的鱼分成 NN 份,扔掉多了的 ii 个,并拿走一份。

编写程序,输入小猫的数量 NN 以及每次扔到海里的鱼的数量 ii,输出海滩上最少的鱼数,使得每只小猫都可吃到鱼。

例如:两只小猫来分鱼 N=2N=2,每次扔掉鱼的数量为 i=1i=1,为了每只小猫都可吃到鱼,可令第二只小猫需要拿走 11 条鱼,则此时待分配的有 33 条鱼。第一只小猫待分配的鱼有 3×2+1=73\times 2+1=7 条。

输入格式

总共 22 行。第一行一个整数 NN,第二行一个整数 ii

保证 0<N<100 < N < 10i<Ni < N

输出格式

一行一个整数,表示满足要求的海滩上最少的鱼数。

样例输入

样例输入 1

2
1

样例输入 2

3
1

样例输出

样例输出 1

7

样例输出 2

25

样例解释

对于样例 1,两只小猫分鱼,每次扔掉 11 条。为了使每只小猫都能吃到鱼,可以假设第二只小猫拿走 11 条鱼,那么分鱼前剩余的鱼数为 33 条(分成 22 份多 11,扔掉 11 条,拿走 11 份)。第一只小猫分鱼时,也是分成 22 份多 11,因此总鱼数为 3×2+1=73 \times 2 + 1 = 7

数据范围

  • 0<N<100 < N < 10
  • i<Ni < N