PHP不確定層級(jí)數(shù)量的循環(huán)嵌套用什么思路解決?
問題描述
問題描述:以下數(shù)字全部是傳參1、給出未知個(gè)數(shù)的產(chǎn)品價(jià)格區(qū)間和可銷售最大數(shù)量最低售價(jià) 最高售價(jià) 最大數(shù)量產(chǎn)品A 1105 1115 29產(chǎn)品B 1605 1620 33產(chǎn)品C 2005 2025 172、給出本單銷售固定的銷售總額14850
以上問題的post傳參可以表現(xiàn)為:
$arr[0][‘low’]=1105;$arr[0][‘high’]=1115;$arr[0][‘num’]=29;$arr[1][‘low’]=1605;$arr[1][‘high’]=1620;$arr[1][‘num’]=33;$arr[2][‘low’]=2005;$arr[2][‘high’]=2025;$arr[2][‘num’]=17;$total=14850;
求:有多少種組合銷售并返回?cái)?shù)組?重點(diǎn)是每次傳參的一維數(shù)量不確定,即可能有100種產(chǎn)品需要計(jì)算。
如果直接寫死的話是很簡單,但是根本無法封裝:
for ($a=1105; $a <= 1115; $a++) { for ($b=1605; $b <= 1620; $b++) { for ($c=2005; $c <= 2025 ; $c++) { for ($x=0; $x <= 19; $x++) {for ($y=0; $y <= 30 ; $y++) { for ($z=0; $z <= 10 ; $z++) { if ($a*$x + $b*$y +$c*$z == 14850) { echo $a."*".$x ."+". $b."*".$y."+". $c."*".$z."<br>"; } }} } } }}
問題就在于傳入產(chǎn)品的種類數(shù)量不確定性,這種不確定要循環(huán)多少次的,用什么思路來解決?
問題解答
回答1:如果不確定層級(jí)用嵌套循環(huán)不是個(gè)好主意
相關(guān)文章:
1. javascript - sublime快鍵鍵問題2. javascript - immutable配合react提升性能?3. vue.js - Vue 如何像Angular.js watch 一樣監(jiān)聽數(shù)據(jù)變化4. 配置Apache時(shí),添加對(duì)PHP的支持時(shí)語法錯(cuò)誤5. css - 寫頁面遇到個(gè)布局問題,求大佬們幫解答,在線等,急!~6. javascript - nodejs關(guān)于進(jìn)程間發(fā)送句柄的一點(diǎn)疑問7. javascript - 移動(dòng)端上不能實(shí)現(xiàn)拖拽布局嗎?8. phpstudy8.1支持win11系統(tǒng)嗎?9. 實(shí)現(xiàn)bing搜索工具urlAPI提交10. Apache 已經(jīng)把網(wǎng)站根目錄的改為allow from all了,但是服務(wù)器還是不能訪問?

網(wǎng)公網(wǎng)安備