百鸡问题

题面如下:

 

 解法也很简单,只要两层for循环就行。

两层for循环,第一层可以是大鸡的个数,从0开始,小于等于100;也可以是1/3每只的小鸡,从100开始,大于等于0;

为了减少循环的次数,可以在确定了大鸡的数目或小鸡的数目时,做一个判断。看循环下去是否有解。

记大鸡数目为x,那么只要(n-5*x)*1.0/3>=100-x就行。

记小鸡数目为x,那么只要x*1.0/3+(100-x)*3<=n即可。

posted @ 2020-08-07 16:09  随意无心  阅读(421)  评论(0)    收藏  举报