遇到一道有趣的题,并计算2种方法的效率,发现如果穷举所有组合竟高达1000000次排列~所以简化到了600次。所以,你的一个条件,或者一个运算,可能会提高几千倍的效率!

<?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 />";
?>

输出结果1:
公,母,雏,分别为:4 18 78
公,母,雏,分别为:8 11 81
公,母,雏,分别为:12 4 84
排列次数为:1000000
函数执行时间为:0.10584402084351

再来看一下第二套算法~整整差了一千倍~虽说是毫秒。

输出结果2:
公,母,雏,分别为:4 18 78
公,母,雏,分别为:8 11 81
公,母,雏,分别为:12 4 84
排列次数为:627
函数执行时间为:0.00016307830810547

PHP经典算法百钱买小鸡相关推荐

  1. Python 编程1000例(13):经典问题——百钱买百鸡

    文章目录 一.需求及分析 二.代码实现 本系列文章通过 1000(一篇文章表示 1 个实例) 个实例 ,为读者提供较为详细的练习题目,以便读者举一反三,深度学习.本系列的文章涉及到 Python 知识 ...

  2. Java经典算法——百钱百鸡

    题目: 公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,可以怎么买? public class BQBJ {public static void main(String[] ...

  3. java百_Java_百钱买百鸡

    题目:公鸡3文钱,母鸡2文钱,3只小鸡1文钱,百钱买百鸡,求多少公鸡,母鸡,小鸡? public class Work6{ public static void main(String[] args) ...

  4. 经典算法题每日演练——第一题 百钱买百鸡

    经典算法题每日演练--第一题 百钱买百鸡 原文:经典算法题每日演练--第一题 百钱买百鸡 百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, ...

  5. 枚举法C语言三个马驮东西,【MagO第三期】经典枚举算法题:百钱买百鸡

    原标题:[MagO第三期]经典枚举算法题:百钱买百鸡 01 历史故事 张邱建提出的百钱买百鸡问题: 山东临清的数学家--张邱建,约公元5世纪著名的大数学家.他将毕生的精力投入到算学研究之中,为数学的不 ...

  6. Java实现算法应用--百钱买百鸡 主要内容:公鸡5元一只,母鸡3元一只,小鸡一元3只。 * 问100块钱怎样可以买100只鸡?

    Java实现算法应用–百钱买百鸡 @author asus 主要内容:公鸡5元一只,母鸡3元一只,小鸡一元3只. 问100块钱怎样可以买100只鸡? 具体代码如下: package package6; ...

  7. 百钱买百鸡问题与百钱兑换问题(C与C++)经典编程算法

    百钱兑换问题提供了两种思路,最精彩的在最下面的代码,供大佬参考,优美的代码赏心悦目(附有详细思路,记得点赞!!!) 1.首先,让我们讲讲百钱买百鸡问题 张丘建在<算经>一书中提出的数学问题 ...

  8. 算法学习之百钱买百鸡

    百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, 用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好 ...

  9. java while求百钱买百鸡问题_java - 百钱百鸡小算法

    百钱百鸡是一个非常经典的不定方程问题,最早源于我国古代的<算经>,这是古代著名数学家张丘建首次提出的.百钱百鸡问题原文如下: 鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买白鸡,问 ...

最新文章

  1. MySQL数据表命令
  2. 换掉VMware?轻量级虚拟机,横空出世!
  3. PriorBox 改进
  4. 25、Power Query-日期与时间数据处理
  5. Pandas中文官档 ~ 基础用法1
  6. shell编程基础-简述
  7. linux应用程序逆向,Linux下查看并下载命令源码包(根据命令/应用程序逆向获取并且安装其所属源码包)...
  8. java基础将一个int数组转换成一个字符串
  9. keychron k8 连接切换蓝牙方案
  10. Python图片攻击
  11. 运动控制 编码器记录
  12. 2021年机修钳工(初级)考试资料及机修钳工(初级)证考试
  13. 抖音的10个规则。AI大数据帮你解决
  14. matplotlib绘制树形图之基本配置——万能模板案例
  15. 参数化曲线-微分几何
  16. RIME鼠须管保姆级五笔配置教程
  17. 头孢是什么?什么是双硫仑反应?//2021-2-11
  18. 百练1724ROADS
  19. SAP 如何打Note
  20. java autoconf_PHP动态编译出现Cannot find autoconf

热门文章

  1. 考研计算机统考考点,大家帮忙.有没有09年计算机考研统考大纲-之操作系统考点分析 爱问知识人...
  2. php横向扩展,Tp框架怎样 写才能写出可以横向扩展的程序!
  3. 使用OpenGL画出四边形不完整的解决
  4. select选择地区插件
  5. linux操作系统是手机还是电脑,电脑的操作系统和手机的操作系统是一回事吗?...
  6. Ubuntu字体安装(WPS)
  7. 工字型钢弹性截面模量计算公式_工字钢的公式
  8. 两种时间格式2017-03-15T16:52:38.186+0800和2017-03-15T16:52:38.186Z的区别
  9. Bzoj1233 [Usaco2009Open]干草堆tower
  10. ES报文辅助生成工具-JavaFX