Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
用DFS+剪枝的方法做的,为什么会无限的TLEvoid judge(int dx,int sumt) { if(sumt==sum/2) { stop=true; flag=true; return; } if(stop) return; for (int i=dx;i>=1;i--) { if(sumt>sum/2) return; if(coun[i]>=num[i]||num[i]==0) continue; if(stop) break; coun[i]++; judge(i,sumt+i); coun[i]--; if(stop) break; } } 其中dx是上一次加入的值,sumt是累加的值,coun数组用于记录1~6背包动态物品的数目。 Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator