“百钱买百鸡”问题是我国古代大数学家张丘建在《算经》里提出的一个问题:公鸡5钱一只,母鸡3钱一只,小鸡1钱3只,请问现在用100钱怎么买100只鸡?这是一道经典的不定方程的整数解问题,可以用以下方程来求解:
其中x是公鸡数,y是母鸡数,z是小鸡数。消去z之后得到x和y的关系式:
我们可以看出,公鸡数须是4的倍数,从而可以得到所有的整数解:
这种常规的解法对于小学阶段的小朋友来说可能有点不好理解,在小学阶段常用的是枚举法:
但是这样枚举的话是不是计算量太大?没关系,这对于电脑来说是小菜一碟:
具体代码如下:
这里用了3个循环分别来算公鸡母鸡和小鸡的数量,要注意循环的条件哦。代码难度不大,相信能看明白。类似的问题还有百僧吃百馒头等等,其实仔细分析一下,是不是跟鸡兔同笼问题很相似呢?
请点个“赞”及“在看”哦。
领取专属 10元无门槛券
私享最新 技术干货