Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Dinkelbach(){
- L=任意狀態(通常設為0);
- do{
- Ans=L;
- for(i:所有元素)d[i]=benefit[i]-L*cost[i];//計算d值
- 找出一組使f(L)最大的x;
- p=0,q=0;
- for(i:所有元素){
- if(x[i])p+=benefit[i],q+=cost[i];
- }
- L=p/q;//更新解,注意q=0的情況
- }while(abs(Ans-L)<EPS);
- return Ans;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement