PHP数组任意N个数相加等于一个定数

复制代码
 1     /**
 2      * @param array $cc 所需数组
 3      * @param int $val 指定值
 4      * @return array
 5      */
 6     function demo($cc, $val)
 7     {
 8         for ($i = 1; $i < 1 << count($cc); $i++) {
 9             $sum  = 0;
10             $temp = "";
11             for ($j = 0; $j < count($cc); $j++) {
12                 if (($i & 1 << $j) != 0) {
13 
14                     $sum  += $cc[$j];
15                     $temp .= $cc[$j] . "+";
16                 }
17             }
18             if ($sum == $val) {
19                 $arr[] = trim($temp, '+');
20             }
21         }
22         return $arr;
23     }
24 
25 $cc = array(12, 12, 5, 9, 12, 5, 7, 5, 7, 9, 12,);
26 echo "<pre>";
27 print_r(demo($cc, 25));
View Code
复制代码

 

posted @   helloPHPworld  阅读(90)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 我与微信审核的“相爱相杀”看个人小程序副业
· DeepSeek “源神”启动!「GitHub 热点速览」
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示