看板 PHP 關於我們 聯絡資訊
是這樣的 我在陣列裡面放了100個數字(亂數) 例如: 25、35、40、37、28、44...等 現在是想將這些數字篩選出來,三個三個成為一組 每一組的總和會最接近且小於100 (而如果有剩餘的數字,則就單獨成為一組) 想請問這樣有沒有比較合適的算法呢? 我想到是把 array[0]+array[1]+array[2] array[0]+array[1]+array[3] array[0]+array[1]+array[4] ... ... array[0]+array[2]+array[3] array[0]+array[2]+array[4] ... ... array[99]+array[98]+array[97] 這些全部計算出來,然後做排序,抓取最接近且小於100的出來 例如是array[0]+array[51]+array[80] 然後把這三個當作第一組,接著將這三個數字剔除掉 然後進入下一輪,按照上面的方式繼續加總計算,然後排序比較 .... 這樣似乎相當花費時間,況且數字如果更多時,感覺會相當恐怖 因此想請問有沒有比較好的計算方式呢? 謝謝大家:) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.74.95.121
KennyL:或許可以用array_chunk切割,再用array_map計算? 沒細想^^" 03/26 21:39