Skip to content

Commit

Permalink
Update Readme.md
Browse files Browse the repository at this point in the history
  • Loading branch information
wisdompeak authored Apr 20, 2019
1 parent 4004136 commit ab04602
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion Recursion/808.Soup-Servings/Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ double DFS(int A,int B)
return 0.25*(DFS(A-100,B)+DFS(A-75,B-25)+DFS(A-50,B-50)+DFS(A-25,B-75));
}
```
特别注意,第三个边界条件很重要.很多人根据题意,以为只要```A<=0||B<0```意味着A或B无法满足任何操作的时候就返回0.其实这个条件太宽松,隐藏着隐患。比如当```A==75,B==0```的时候,这个时候B已经先于A清空,两个胜利的条件(即AB同时清空或者A比B先清空)都肯定再无法满足,这个时候就应该即使返回0,否则放任下一步操作的话,就可以在下一轮得到```A==0, B==0```,而这个状态是会被判定为胜利条件之一的,于是这部分概率就被误叠加到最终结果了。
特别注意,第三个边界条件很重要很多人根据题意,以为只要```A<=0||B<0```意味着A或B无法满足任何操作的时候才返回0。其实这个条件太宽松,隐藏着隐患。比如当```A==75,B==0```的时候,这个时候B已经先于A清空,两个胜利的条件(即AB同时清空或者A比B先清空)都肯定再无法满足,这个时候就应该即使返回0,否则放任下一步操作的话,依然可以合法地通过操作1在下一轮得到```A==0, B==0```,而这个状态是会被判定为胜利条件之一的,于是这部分概率就被误叠加到最终结果了。

0 comments on commit ab04602

Please sign in to comment.