- 1
- 0
- 约1.38万字
- 约 20页
- 2024-04-28 发布于上海
- 举报
POJ1011Sticks搜索+强剪枝(终于AC了,分享经验)
这个题目是不是贪心的,我就是第一次用了贪心,一直WA,相当的悲剧,贪心错误的sample:
715118884321,所以大家还是全部搜索。但是全部搜索必须剪枝,不然肯定是TLE
的,而且本体属于强剪枝,少剪了也是TLE。
经典搜索题,果然是到处充斥着剪枝才能过啊,我的代码离剪到极限还差很多
题目给出一大堆小棍子的长度,需要把他们拼成几根长度相等的大棍子,求大棍子的最短长度
看自己剪枝方法的效果时候,可以添设一个变量来记录递归次数
如剪枝4:没有这个剪枝的情况下对以下数据需要40万次递归,而加上这个剪枝后减少到了4万多次
对数据:
45
1532411188815324111888153241118881532411188815
324111888
#includeiostream#includealgorithmusingnamespacestd;intsticks[65];
intused[65];intn,len;
booldfs(inti,intl,intt)//i为当前试取的棍子序号,l为要拼成一根完整的棍子还需要的长度,t初值为所有棍子总长度
{
if(
原创力文档

文档评论(0)