[从头学数学] 第73节 数学广角──鸡兔同笼

剧情提要:
[机器小伟]在[工程师阿伟]的陪同下进入练气期第八层功法的修炼,
这次要修炼的目标是[数学广角──鸡兔同笼]。

正剧开始:

星历2016年02月04日 15:03:37, 银河系厄尔斯星球中华帝国江南行省。
[工程师阿伟]正在和[机器小伟]一起研究鸡兔同笼问题。


不过在开始研究鸡和兔子的问题前,[人叫板老师]让小伟给某小学的同学

算一下营养午餐问题:


[从头学数学] 第73节 数学广角──鸡兔同笼_第1张图片

这小朋友们吃个饭也不容易,计算量这么大,而且还不知道里面是不是有符合专家要求的搭配。

于是小伟就来算了:

<span style="font-size:18px;">>>> 
可以选择:['猪肉粉条', '辣子鸡丁', '韭菜豆芽']这三种菜肴,热量3992, 脂肪50, 蛋白质16。
可以选择:['猪肉粉条', '西红柿鸡蛋', '韭菜豆芽']这三种菜肴,热量3858, 脂肪47, 蛋白质25。
可以选择:['猪肉粉条', '香菜冬瓜', '香菇油菜']这三种菜肴,热量3937, 脂肪48, 蛋白质14。
可以选择:['猪肉粉条', '香菜冬瓜', '韭菜豆芽']这三种菜肴,热量3523, 脂肪44, 蛋白质10。
可以选择:['猪肉粉条', '家常豆腐', '韭菜豆芽']这三种菜肴,热量3979, 脂肪48, 蛋白质22。
可以选择:['猪肉粉条', '香菇油菜', '韭菜豆芽']这三种菜肴,热量3870, 脂肪43, 蛋白质16。
可以选择:['炸鸡排', '辣子鸡丁', '香菇油菜']这三种菜肴,热量3198, 脂肪48, 蛋白质34。
可以选择:['炸鸡排', '西红柿鸡蛋', '家常豆腐']这三种菜肴,热量3173, 脂肪50, 蛋白质49。
可以选择:['炸鸡排', '西红柿鸡蛋', '香菇油菜']这三种菜肴,热量3064, 脂肪45, 蛋白质43。
可以选择:['炸鸡排', '家常豆腐', '香菇油菜']这三种菜肴,热量3185, 脂肪46, 蛋白质40。
可以选择:['土豆烧牛肉', '家常豆腐', '香菇油菜']这三种菜肴,热量3026, 脂肪50, 蛋白质31。
可以选择:['辣子鸡丁', '西红柿鸡蛋', '家常豆腐']这三种菜肴,热量2952, 脂肪49, 蛋白质36。
可以选择:['辣子鸡丁', '家常豆腐', '香菇油菜']这三种菜肴,热量2964, 脂肪45, 蛋白质27。
共有选择13种。

def tmp():
    #从9种备选菜肴中选择三样
    a = [];
    for i in range(9):
        for j in range(i+1, 9):
            for k in range(j+1, 9):
                a.append([i,j,k]);
    #所有选择数
    size = len(a);

    food = [['猪肉粉条', 2462,25,6],\
             ['炸鸡排', 1254,19,20],\
             ['土豆烧牛肉',1095,23,11], \
             ['辣子鸡丁', 1033,18,7],\
             ['西红柿鸡蛋', 899,15,16],\
             ['香菜冬瓜', 564,12,1],\
             ['家常豆腐', 1020,16,13],\
             ['香菇油菜', 911,11,7],\
             ['韭菜豆芽', 497,7,3]];
    count = 0;
    for i in range(size):
        heat = 0;
        fat = 0;
        protein = 0;
        choice = [];
        for j in range(3):
            choice.append(food[a[i][j]][0]);
            heat += food[a[i][j]][1];
            fat += food[a[i][j]][2];
            protein += food[a[i][j]][3];

        if heat >= 2926 and fat <= 50:
            print('可以选择:{0}这三种菜肴,热量{1}, 脂肪{2}, 蛋白质{3}。'\
                  .format(choice, heat, fat, protein));
            count+=1;

    print('共有选择{0}种。'.format(count));

    return;</span>

结果出来了,还好,小朋友们还是有吃到放心食物的机会的。


然后,鸡和兔闪亮登场了。

[从头学数学] 第73节 数学广角──鸡兔同笼_第2张图片

<span style="font-size:18px;">>>> 
鸡:23, 兔: 12。

def tmp():
    #头
    head = 35;
    #足
    foot = 94
    for i in range(head):
        if i * 2 + (head-i)*4 == foot:
            print('鸡:{0}, 兔: {1}。'.format(i, head-i));

    return;</span>



<span style="font-size:18px;">>>> 
鸡:3, 兔: 5。</span>



[从头学数学] 第73节 数学广角──鸡兔同笼_第3张图片


[从头学数学] 第73节 数学广角──鸡兔同笼_第4张图片

[从头学数学] 第73节 数学广角──鸡兔同笼_第5张图片


本节到此结束,欲知后事如何,请看下回分解。

你可能感兴趣的:([从头学数学] 第73节 数学广角──鸡兔同笼)