社区
Java SE
帖子详情
有这样一个问题,谁能用程序来描述下
had123
2007-09-04 09:51:34
一个老虎在一天中午吃饭,每个肉3斤左右,一天也就能吃30斤肉左右,但这有2个饲养员
饲养员A的情况是:1块肉有30%的概率会多加了3斤.
饲养员B的情况是:1块肉有25%的概率也会多加3了斤,有5%的概率呢会多给一块肉(而且这块肉呢还可能是多加了3斤的肉)
...全文
207
4
打赏
收藏
有这样一个问题,谁能用程序来描述下
一个老虎在一天中午吃饭,每个肉3斤左右,一天也就能吃30斤肉左右,但这有2个饲养员 饲养员A的情况是:1块肉有30%的概率会多加了3斤. 饲养员B的情况是:1块肉有25%的概率也会多加3了斤,有5%的概率呢会多给一块肉(而且这块肉呢还可能是多加了3斤的肉)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chb865
2007-09-07
打赏
举报
回复
我觉得应该是这样吧,饲养员B的我觉得改成这样会比较合理
int sumB = 0;
for (int i = 0; i < 10; i++) {
double r = Math.random();
double oneMore = Math.random();
if (r < 0.25) {
if (oneMore < 0.05)
sumB = sumB + 12;
else
sumB = sumB + 6;
} else {
if (oneMore < 0.05)
sumB = sumB + 6;
else
sumB = sumB + 3;
}
}
System.out.println("sumB="+sumB);
ZJXHZ
2007-09-06
打赏
举报
回复
对于A饲养员,没有什么好说,比较简单。
对于饲养员B,我觉得其实你这个题目也没有讲的十分清楚。我是在认为B绝对不会出现一次多给两块肉的情况而留下oneMore这个变量的。这个变量的作用就是为了防止这种情况,即如果已经多给了一块肉,那么oneMore为true,以后不管循环多少次,都不会再多给肉(也就是不会再进--ix这段代码了),即使出现了小于0.05的概率。
如果抛开我之前的那个假设,把oneMore相关的代码删除即可。而且我认为这样更加合理,只是我认为这不是你的原意,所以才冒昧假设。
had123
2007-09-04
打赏
举报
回复
呵呵 首先谢谢回贴 我研究了下你的程序,有2个疑问
第1:当B饲养员有5%的概率多给1块肉的时候,这个在程序里只能进入一次
if(r < 0.05 && !oneMore) 因为需要oneMore来进入循环,而oneMore被赋予true的时候 就再也进入不了判断了,100块肉可能有5块左右有这样的概率,而这个程序只能算一次。
第2:首先,--ix;这个程序我看了也很受启发是个很好的技巧,^_^,好好学了下,但我看这种情况你可能没有想过,你让程序多循环了下,但对于这个例子会出现隐藏问题,假设你多出那次又刚好在0。05循环内会出现什么情况,也就是说0。05概率多出了>=2块肉,这跟题目是不符合,多给一块肉后是不会再这块肉的情况多给肉的,因为0。05概率比较低,所以不会出现这种情况,但这个概率越大出现的问题也就越大。
呵呵 我也不知道我说的对不对 望回复下哈
ZJXHZ
2007-09-04
打赏
举报
回复
这个题目满有意思,我来试试:
int sumA = 0;
for(int ix = 0; ix < 10; ++ix)
{
double r = Math.random();
if(r < 0.3)
{
sumA += 6;
}
else
{
sumA +=3;
}
}
System.out.println(sumA);
int sumB = 0;
boolean oneMore = false;
for(int ix = 0; ix < 10; ++ix)
{
double r = Math.random();
if(r < 0.05 && !oneMore)
{
oneMore = true;
--ix;
r = Math.random();
}
if(r < 0.25)
{
sumB += 6;
}
else
{
sumB += 3;
}
}
System.out.println(sumB);
解决SQLSERVER数据库驱动
程序
无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
问题
JAR包
在SQLSERVER数据库的使用过程中,有时会出现
一个
棘手的
问题
,即驱动
程序
无法通过安全套接字层(SSL)加密与SQL Server建立安全连接。这个
问题
通常表明数据库连接在尝试使用SSL进行加密时遇到了障碍,可能影响数据的...
用发送ICMP数据包的方法实现的Ping
程序
【标题】"用发送ICMP数据包的方法实现的Ping
程序
" 涉及到的是网络通信中的
一个
基础工具——Ping,它主要用于测试网络连接的可达性和速度。在计算机网络中,Ping是通过发送Internet控制消息协议(ICMP)回显请求报文...
C++经典
程序
总的来说,这个压缩包文件为学习者提供了
一个
全面了解和实践C++编程的平台,从基本语法到高级特性,从命令行
程序
到GUI应用,从单线程到多线程编程,涵盖了C++语言的各个重要方面。通过深入研究这些经典例程,不仅...
一元云购源码云购源码夺宝
程序
源码
然而,据
描述
提到,此源码存在图片缺失和部分bug,这意味着在实际使用或研究时,开发者需要自行修复这些
问题
。这既是挑战,也是锻炼编程能力的机会。对于那些对一元云购系统感兴趣,或者希望开发类似应用的开发者而...
灵活运用TSRs的
程序
库
当
一个
任务用完其分配的时间后,系统会切换到下
一个
等待的任务,这样可以确保多个任务能够有序且公平地访问处理器资源。这种调度方法特别适合多任务环境,如嵌入式系统、服务器或需要实时响应的应用场景。 在汇编...
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章