Sticks-hdu-1455深度搜索dfs
生活随笔
收集整理的這篇文章主要介紹了
Sticks-hdu-1455深度搜索dfs
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Sticks
題目傳送門。
題目大意是,給你一個數字n代表總共的棍子數量,要做的就是,把這幾根棍子拼成長度相同的棍子,并且讓所拼成的棍子的長度盡可能地小,也就是拼成的棍子的數量盡可能的多。
在這里很簡單的想到要給棍子排一下序,這樣可以更簡單找到合適棍子的。
-------------------下面的代碼除去注釋就是我自己寫的代碼。----------------------
這段注釋就是這個代碼的靈魂所在,
沒有這一段能在樣例中跑出超時,
但是有這一段代碼輕輕松松就跑完了所有樣例。
但是這個代碼的精髓就是:
第一步if剪枝:
會進入當len==0的時候這里就代表著,有一根棍子找了一圈發現找不到滿足條件的,然后回到main函數里的for循環,嘗試下一個target。
第二步while剪枝:
單現在查找的target有可能時正確答案時,對len不為0的情況,就是當前嘗試的棍子不符合條件,所以當前長度的棍子可以不用再試了,換別的棍子繼續嘗試。
總結
以上是生活随笔為你收集整理的Sticks-hdu-1455深度搜索dfs的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: switch如何连接电视
- 下一篇: [蓝桥杯2016初赛]方格填数