百钱买小鸡/*公鸡5文钱1只,母鸡三文钱一只,小鸡一文钱三只。现在用100文钱共买了100只鸡,问这100只鸡中,公鸡,母鸡,小鸡各是多少只?

<?
    php header("Content-Type:text/html;charset=utf-8");//百钱买小鸡/*公鸡5文钱1只,母鸡三文钱一只,小鸡一文钱三只。现在用100文钱共买了100只鸡,问这100只鸡中,公鸡,母鸡,小鸡各是多少只?*/

    $start = microtime(true);//写法一 穷举所有排列:计算1000000次。
    for($g = 1; $g <= 100; $g++){    
        for($m = 1; $m <= 100; $m++){        
            for($x = 1; $x <= 100; $x++){            
                if($g+$m+$x == 100 && $g*5+$m*3+$x/3==100){                
                    echo "公,母,雏,分别为:".$g."&nbsp;".$m."&nbsp;".$x."<br />";}//计算排列组合次数            
                    if($g == 100 && $m == 100 && $x == 100){                
                        echo "排列次数为:".$g*$m*$x;               
                    }        
                }    
            }
        }
        echo "<br />";
        $end = microtime(true);
        echo "函数执行时间为:".($end - $start);//计算函数运行时间。
        echo "<br />";//写法二:简化组合.
        $start = microtime(true);
        for($g = 1; $g < 20; $g++){    
            for($m = 1; $m <= 33; $m++){        
                $x = 100 - $g - $m;        
                if($g+$m+$x == 100 && $g*5+$m*3+$x/3==100){            
                    echo "公,母,雏,分别为:".$g."&nbsp;".$m."&nbsp;".$x."<br />";        
                }        //计算排列组合次数        
                if($g == 19 && $m == 33){            
                    echo "排列次数为:".$g*$m;          
                }    
            }
        }
        echo "<br />";
        $end = microtime(true);
        echo "函数执行时间为:".($end - $start);//计算函数运行时间。
        echo "<br />";
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值