PHP实现的简单排列组合算法应用示例


Posted in PHP onJune 20, 2017

本文实例讲述了PHP实现的简单排列组合算法应用。分享给大家供大家参考,具体如下:

一、问题:

给你一个40斤的西瓜,给3个人分,有多少种分法?

二、PHP实现代码:

<?php
$aa = range(1,40);
$bb = array();
foreach($aa as $k=>$val){
  foreach($aa as $v){
    foreach($aa as $vl){
      $sum = $val+$v+$vl;
      if($sum == 40){
        $bb[$k][0] = $val;
        $bb[$k][1] = $v;
        $bb[$k][2] = $vl;
      }
    }
  }
}
echo '<pre>';
print_r($bb);
exit;
?>

运行结果如下:

Array
(
  [0] => Array
    (
      [0] => 1
      [1] => 38
      [2] => 1
    )
  [1] => Array
    (
      [0] => 2
      [1] => 37
      [2] => 1
    )
  [2] => Array
    (
      [0] => 3
      [1] => 36
      [2] => 1
    )
  [3] => Array
    (
      [0] => 4
      [1] => 35
      [2] => 1
    )
  [4] => Array
    (
      [0] => 5
      [1] => 34
      [2] => 1
    )
  [5] => Array
    (
      [0] => 6
      [1] => 33
      [2] => 1
    )
  [6] => Array
    (
      [0] => 7
      [1] => 32
      [2] => 1
    )
  [7] => Array
    (
      [0] => 8
      [1] => 31
      [2] => 1
    )
  [8] => Array
    (
      [0] => 9
      [1] => 30
      [2] => 1
    )
  [9] => Array
    (
      [0] => 10
      [1] => 29
      [2] => 1
    )
  [10] => Array
    (
      [0] => 11
      [1] => 28
      [2] => 1
    )
  [11] => Array
    (
      [0] => 12
      [1] => 27
      [2] => 1
    )
  [12] => Array
    (
      [0] => 13
      [1] => 26
      [2] => 1
    )
  [13] => Array
    (
      [0] => 14
      [1] => 25
      [2] => 1
    )
  [14] => Array
    (
      [0] => 15
      [1] => 24
      [2] => 1
    )
  [15] => Array
    (
      [0] => 16
      [1] => 23
      [2] => 1
    )
  [16] => Array
    (
      [0] => 17
      [1] => 22
      [2] => 1
    )
  [17] => Array
    (
      [0] => 18
      [1] => 21
      [2] => 1
    )
  [18] => Array
    (
      [0] => 19
      [1] => 20
      [2] => 1
    )
  [19] => Array
    (
      [0] => 20
      [1] => 19
      [2] => 1
    )
  [20] => Array
    (
      [0] => 21
      [1] => 18
      [2] => 1
    )
  [21] => Array
    (
      [0] => 22
      [1] => 17
      [2] => 1
    )
  [22] => Array
    (
      [0] => 23
      [1] => 16
      [2] => 1
    )
  [23] => Array
    (
      [0] => 24
      [1] => 15
      [2] => 1
    )
  [24] => Array
    (
      [0] => 25
      [1] => 14
      [2] => 1
    )
  [25] => Array
    (
      [0] => 26
      [1] => 13
      [2] => 1
    )
  [26] => Array
    (
      [0] => 27
      [1] => 12
      [2] => 1
    )
  [27] => Array
    (
      [0] => 28
      [1] => 11
      [2] => 1
    )
  [28] => Array
    (
      [0] => 29
      [1] => 10
      [2] => 1
    )
  [29] => Array
    (
      [0] => 30
      [1] => 9
      [2] => 1
    )
  [30] => Array
    (
      [0] => 31
      [1] => 8
      [2] => 1
    )
  [31] => Array
    (
      [0] => 32
      [1] => 7
      [2] => 1
    )
  [32] => Array
    (
      [0] => 33
      [1] => 6
      [2] => 1
    )
  [33] => Array
    (
      [0] => 34
      [1] => 5
      [2] => 1
    )
  [34] => Array
    (
      [0] => 35
      [1] => 4
      [2] => 1
    )
  [35] => Array
    (
      [0] => 36
      [1] => 3
      [2] => 1
    )
  [36] => Array
    (
      [0] => 37
      [1] => 2
      [2] => 1
    )
  [37] => Array
    (
      [0] => 38
      [1] => 1
      [2] => 1
    )
)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
收藏的一个php小偷的核心程序
Apr 09 PHP
PHP字符转义相关函数小结(php下的转义字符串)
Apr 12 PHP
php常用Output和ptions/Info函数集介绍
Jun 19 PHP
php打开文件fopen函数的使用说明
Jul 05 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
May 12 PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
Sep 16 PHP
PHP自定义函数实现格式化秒的方法
Sep 14 PHP
php 浮点数比较方法详解
May 05 PHP
PHP设计模式之装饰器模式实例详解
Feb 07 PHP
php-fpm中max_children的配置
Mar 15 PHP
Laravel多域名下字段验证的方法
Apr 04 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
Apr 04 PHP
php提交表单时保留多个空格及换行的文本样式的方法
Jun 20 #PHP
PHP中模糊查询并关联三个select框
Jun 19 #PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 #PHP
Laravel给生产环境添加监听事件(SQL日志监听)
Jun 19 #PHP
Yii 2.0自带的验证码使用经验分享
Jun 19 #PHP
PHP实现下载远程图片保存到本地的方法
Jun 19 #PHP
Yii2 如何在modules中添加验证码的方法
Jun 19 #PHP
You might like
七款最流行的PHP本地服务器分享
2013/02/19 PHP
基于php缓存的详解
2013/05/15 PHP
php下获取http状态的实现代码
2014/05/09 PHP
php创建和删除目录函数介绍和递归删除目录函数分享
2014/11/18 PHP
PHP获取当前文件的父目录方法汇总
2016/07/21 PHP
parseInt parseFloat js字符串转换数字
2010/08/01 Javascript
JavaScript高级程序设计 读书笔记之八 Function类及闭包
2012/02/27 Javascript
js string 转 int 注意的问题小结
2013/08/15 Javascript
javascript 对象数组根据对象object key的值排序
2015/03/09 Javascript
jQuery实现的进度条效果
2015/07/15 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
javascript用正则表达式过滤空格的实现代码
2016/06/14 Javascript
nodejs+websocket实时聊天系统改进版
2017/05/18 NodeJs
详解小程序循环require之坑
2019/03/08 Javascript
Python中的yield浅析
2014/06/16 Python
浅谈Matplotlib简介和pyplot的简单使用——文本标注和箭头
2018/01/09 Python
Python爬虫实现(伪)球迷速成
2018/06/10 Python
Python wxPython库使用wx.ListBox创建列表框示例
2018/09/03 Python
简单了解Pandas缺失值处理方法
2019/11/16 Python
Python解析json代码实例解析
2019/11/25 Python
python实现监控阿里云账户余额功能
2019/12/16 Python
python实现发送带附件的邮件代码分享
2020/09/22 Python
捷克厨房用品购物网站:Tescoma
2018/07/13 全球购物
Bitiba意大利:在线宠物商店
2020/10/31 全球购物
德国最大的婴儿用品网上商店:Kidsroom.de(支持中文)
2020/09/02 全球购物
粗加工管理制度
2014/02/04 职场文书
业务员简历自我评价
2014/03/06 职场文书
化工操作工岗位职责
2014/04/29 职场文书
开展读书活动总结
2014/06/30 职场文书
化工专业求职信
2014/07/01 职场文书
查摆问题自查报告范文
2014/10/13 职场文书
航班延误投诉信
2015/07/02 职场文书
德能勤绩工作总结
2015/08/11 职场文书
党风廉政建设心得体会
2019/05/21 职场文书
导游词之日本富士山
2020/01/06 职场文书
Golang并发工具Singleflight
2022/05/06 Golang