PHP实现的简单排列组合算法应用示例
作者:北京流浪儿 发布时间:2023-11-18 16:28:40
标签:PHP,排列,组合,算法
本文实例讲述了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程序设计有所帮助。


猜你喜欢
- SQL Server备份是一项系统工程,十分耗费时间。由于运行期间数据库持续增长,所以相应的备份也要花掉更多时间。通常100G的数据库就被视
- 通常大家想知道数据库是否增长了,增长了多少。大家可能想到用数据库的各个历史时期的大小来比较就可以了。 但怎么能得到这些历史的大小数据呢?好像
- 一、触发器概念触发器是SQL server提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,是由事件来触
- 以下的例子,将32x32的二维矩阵,装换成1x1024的向量def image2vector (filename): returnVect=
- 分析古诗文网站下图1展示了古诗文网站—》诗文 栏目的首页数据。该栏目的地址是:https://so.gushiwen.cn/shiwens/
- 前言: 在项目开发中,一些业务表字段经常使用日期和时间类型,而且后续还会牵涉到这类字段的查询。关于日期及时间的查询等各类需求也很多,本篇文章
- 一、传入的参数类型要求不同:1、 file.write(str)需要传入一个字符串做为参数,否则会报错。write( "字符串&q
- 笔者小白在收集印刷体汉字的深度学习训练集的时候,一开始就遇到的了一个十分棘手的问题,就是如何获取神经网络的训练集数据。通过上网搜素,笔者没有
- 本文实例讲述了Python数据分析之双色球统计单个红和蓝球哪个比例高的方法。分享给大家供大家参考,具体如下:统计单个红球和蓝球,哪个组合最多
- Microsoft SQL Server 7.0安全问题Microsoft Corporation【「Microsoft SQL Serve
- 我们平时接触的长乘法,按位相乘,是一种时间复杂度为 O(n ^ 2) 的算法。今天,我们来介绍一种时间复杂度为 O (n ^ log 3)
- 开源数据库架构设计原则01. 技术选型选择成熟的平台和技术,同时是最熟悉的,能做到极致的,用好不用坏,用熟不用生。目前业界的MySQL主流分
- 1. 概述触发器是一种特殊的存储过程,它不能被显式地调用,而是在往表中插入记录﹑更新记录或者删除记录时被自动地激活。 所以触发器可以用来实现
- 考虑到女友的安全问题,就做了一个app实现定位和服务器实现转发的东西。刚学python,竟没想到用对象编程会更加方便,全程过程式开发,代码有
- 目录前言1. v-show2. v-if 3. v-show和v-if的区别1. 在原理方面的区别2. 在使用应用场景方面的区别总
- 本文实例为大家分享了python实现图片转换成素描和漫画格式的具体代码,供大家参考,具体内容如下原图图片转换后的成果源码# -*- codi
- 本文实例讲述了Java读取文件及基于正则表达式的获取电话号码功能。分享给大家供大家参考,具体如下:1、正则表达式正则表达式,又称 正规表示法
- 本文实例讲述了php中使用key,value,current,next和prev函数遍历数组的方法。分享给大家供大家参考。具体分析如下:ph
- 【实用系列】-- 胖页面载入,加载JavaScript效果整理了一下代码,做了一些优化,算是最终版了。完全不需要对其他文件做任何修改,就是所
- 我们提倡无论何时都尽可能地使用CSS,这样我们更容易取得成功.现在浏览器对CSS的支持已经非常好,肯定足以让你用来控制你的网页布局与排版.但