2250: 【基础】小猫分鱼
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:5
解决:5
题目描述
海滩上有一堆鱼,N 只小猫来分。第一只小猫把这堆鱼平均分为 N 份,多了 i个(i<N) ,这只小猫把多的 i 个扔入海中,拿走了一份。第二只小猫接着把剩下的鱼平均分成 N 份,又多了 i 个,小猫同样把多的 i 个扔入海中,拿走了一份。第三、第四、……,第 N 只小猫仍是最终剩下的鱼分成 N 份,扔掉多了的 i 个,并拿走一份。
编写程序,输入小猫的数量 N 以及每次扔到海里的鱼的数量 i,输出海滩上最少的鱼数,使得每只小猫都可吃到鱼。
例如:两只小猫来分鱼 N=2,每次扔掉鱼的数量为 i=1,为了每只小猫都可吃到鱼,可令第二只小猫需要拿走 1 条鱼,则此时待分配的有 3条鱼。第一只小猫待分配的鱼有 3∗2+1=7 条。
输入
总共 2行。第一行一个整数 N,第二行一个整数 i。
保证 0<N<10;i<N 。
输出
一行一个整数,表示满足要求的海滩上最少的鱼数。
样例输入 复制
2
1
样例输出 复制
7
提示
三只小猫来分鱼 N=3,每次扔掉鱼的数量为 i=1,为了每只小猫都可吃到鱼,可令第三只小猫需要拿走3 条鱼(拿走 1 条和 2 条不满足要求),则此时待分配的有 10 条鱼。第二只小猫待分配的鱼有 10×3/2+1=16 条。第一只小猫待分配的鱼有 16×3/2+1=25 条。
样例2中,为什么第三只小猫拿走1条和2条不满足要求:
-
如果第三只小猫拿走1条,待分配的就有1×3+1=4 条(丢1条,拿1条,剩2条)。那么这4条就是来源于第二只猫丢1条拿1份(2条)后剩余的2份(4条),所以第二只小猫待分配的鱼有 4∗3/2+1=7 条(丢1,拿2,剩4)。这7条来源于第一只猫丢1条拿1份后剩余的2份(7条),但是7条并不能平分为2份,所以第三只小猫拿走1条不成立。
-
同样的,如果第三只小猫拿走2条,待分配的就有2×3+1=7 条(丢1条,拿2条,剩4条)。这7条来源于第二只猫丢1条拿1份后剩余的2份(7条),但是7条并不能平分为2份,所以第三只小猫拿走2条不成立。