测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A71563. 小猫分鱼

编程题 入门

题目描述

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

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

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

输入格式

总共 2 行 。

第一行一个整数 N ,第二行一个整数 i

输出格式

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

输入输出样例

输入 #1
2
1
输出 #1
7
输入 #2
3
1
输出 #2
25

说明/提示

【样例 2 解释】

三只小猫来分鱼 N = 3 ,每次扔掉鱼的数量为 i = 1 ,为了每只小猫都可吃到鱼 ,可令第三只小猫需要拿走 3 条鱼(拿走 1 条和 2 条不满足要求) ,则此时待分配的有 10 条鱼 。第二只小猫待分配的鱼有 10 \times 3 / 2 + 1 = 16 条 。第⼀只小猫待分配的鱼有 16 \times 3 / 2 + 1 = 25 条。

【数据范围】

保证 0 < N < 10 i < N