出售金鱼

来源:互联网 发布:退休综合征数据 编辑:程序博客网 时间:2024/04/26 17:03

问题:

买卖提将养的一缸金鱼分五次出售,系统上一次卖出全部的一半加二分之一条;第二次卖出余下的三分之一加三分之一条;第三次卖出余下的四分之一加四分之一条;第四次卖出余下的五分之一加五分之一条;最后卖出余下的11条。问原来的鱼缸中共有几条金鱼?

分析:

第j次卖出余下的(j+1)分之一+1/(j+1)条,假设第j次卖鱼前金鱼总数为x,则第j次卖鱼后还剩下的条数:x-(x-1)/(j+1),金鱼只能整条出售,因此(x+1)要整除(j+1),可以从23开始试探x的值,x一定是奇数,因为一开始卖半条,所以步长取2。

for (i = 23; flag == 0; i += 2){for (j = 1, x = i; j <= 4 && x >= 11; j++)if ((x + 1) % (j + 1) == 0)x -= (x + 1) / (y + 1);else{x = 0;break;}if (j == 5 && x == 11){printf("%d", i);flag = 1;}}


                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

0 0
原创粉丝点击