今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何
问题很简单,数学上二元一次方程就可以解决。
计算机具有强大的运算能力。使用枚举方法很简单。
思路。确定循环的边界。全部为兔,最多23 只,全部为鸡47 只。
兔的边界小比鸡的边界小的多。从兔开始枚举
方法一:
for x in range(24):
if 4*x + 2*(35-x) ==94:
print(x,35-x)
方法二:
列表解析式
res=["兔有%d只,鸡有%d只"%(x,35-x) for x in range(24) if 4*x + 2*(35-x) == 94]
方法三:
python 的高阶函数
res =(lambda x:"兔有:%d只,鸡有:%d只"%(x,35-x))(next(filter(lambda x:4*x +2*(35-x)==94,range(24))))
java 代码
public class Solution {
public static void main(String[] args) {
int[] arr = new int[24];
for (int i = 1; i <arr.length ; i++) {
if(4*i + 2*(35-i)==94){
System.out.println("兔有:"+i+"只鸡有:"+(35-i)+"只");
}
}
}
}