Java实现 LeetCode 808 分汤 (暴力模拟).docx

上传人:Lun****ng 文档编号:143863550 上传时间:2020-09-02 格式:DOCX 页数:2 大小:10.84KB
返回 下载 相关 举报
Java实现 LeetCode 808 分汤 (暴力模拟).docx_第1页
第1页 / 共2页
Java实现 LeetCode 808 分汤 (暴力模拟).docx_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《Java实现 LeetCode 808 分汤 (暴力模拟).docx》由会员分享,可在线阅读,更多相关《Java实现 LeetCode 808 分汤 (暴力模拟).docx(2页珍藏版)》请在金锄头文库上搜索。

1、Java实现 LeetCode 808 分汤 (暴力模拟)808. 分汤有 A 和 B 两种类型的汤。一开始每种类型的汤有 N 毫升。有四种分配操作:提供 100ml 的汤A 和 0ml 的汤B。提供 75ml 的汤A 和 25ml 的汤B。提供 50ml 的汤A 和 50ml 的汤B。提供 25ml 的汤A 和 75ml 的汤B。当我们把汤分配给某人之后,汤就没有了。每个回合,我们将从四种概率同为0.25的操作中进行分配选择。如果汤的剩余量不足以完成某次操作,我们将尽可能分配。当两种类型的汤都分配完时,停止操作。注意不存在先分配100 ml汤B的操作。需要返回的值: 汤A先分配完的概率 +

2、汤A和汤B同时分配完的概率 / 2。示例:输入: N = 50输出: 0.625解释:如果我们选择前两个操作,A将首先变为空。对于第三个操作,A和B会同时变为空。对于第四个操作,B将首先变为空。所以A变为空的总概率加上A和B同时变为空的概率的一半是 0.25 *(1 + 1 + 0.5 + 0)= 0.625。注释:0 = N =4800) return 1.0; int n=(int)Math.ceil(N/25.0); double dp=new doublen+1n+1; /特殊条件 dp00=0.5; for(int i=1;in+1;i+) dpi0=0; dp0i=1; for(int i=1;i0?i-4:0; int a2=i-30?i-3:0; int a3=i-20?i-2:0; int a4=i-10?i-1:0; for(int j=1;j0?j-1:0; int b3=j-20?j-2:0; int b4=j-30?j-3:0; dpij=0.25*(dpa1b1+dpa2b2+dpa3b3+dpa4b4); return dpnn;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > IT计算机/网络 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号