问题百钱买百鸡的随手笔记
问题:编写程序,计算百钱买百鸡问题。假设公鸡5元一只,母鸡3元一只,小鸡1元三只,现在有100块钱,想买100只鸡,问有多少种买法。
这是我初学python遇到的第一个实际编程题,希望记录一下我的解题方法。
这是我的最初思路
起初希望通过对三种鸡数量的遍历,并在循环过程中加入对百钱和百鸡的判断条件来计算买法,不过在朋友的帮助下发现问题,对于小鸡的数量z 并不能确定z是3的倍数,所以由此可知此算法会多算一些情况。
这是修改后的代码
通过加入对z是否为3的倍数的判断条件,可减少此前多算的买法。
然后是第二种想法,根据价格可知公鸡和母鸡的数量可以确定
x<=20
y<34
所以在循环可以将次数改进至下图情况
最后是对两种方法运算时间长短的对比。
通过结果可知第二种方法比第一种方法能够运算快一些,所以选择第二种方法。
第一次写博客,有错误希望指正。