動態規劃數的劃分實際應用

在手遊《和平精英》裏面,當剩餘5個隊伍的時候,會提示“勝利”,這時,我們可以根據剩餘的4個隊伍的總人數S來推斷4個隊伍的人數分佈可能情況。

這個信息,對於我們遊戲還是很有幫助的,尤其是提防滿編隊的存在以及獨狼的數量。

 

這裏就涉及到整數的劃分問題,

剛好,我們來回顧下動態規劃,

數的劃分,參考

https://blog.csdn.net/dllgdxlxl/article/details/79438098

 

f(S, k) 的所有組合情況 = f( S-1, k-1) 含有1的情況

  +  f(S-k, k) 不含有1的情況

 

這個遞推公式有點繞,需要用實例比劃一下才好理解。

 

對於我們這個問題,由於每隊的人數最多爲4(正常情況下),所以有了一個限制條件。

這個問題裏,我們可以採用一個更清楚的方法去處理,由於其他隊伍只有4個,就設其人數分別爲 a, b, c, d, 且 1 <= a, b, c, d <= 4

粗暴一點,搞個4層for循環,當 a + b + c + d == S 時,就打印出來,

這樣,就可以找出所有的組合了。

 

有了其他隊伍人數分佈情況,我們就更有把握了。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章