LightOJ.1265.Island of Survival(概率)
题目链接...我找不着了
\(Description\)
岛上有t只老虎,1个人,d只鹿。每天随机有两个动物见面
1.老虎和老虎碰面,两只老虎就会同归于尽;
2.老虎和人碰面或者和鹿碰面,老虎都会吃掉对方;
3.人和鹿碰面,人可以选择吃或者不吃该鹿;
4.鹿和鹿碰面,相安无事;
求最后人活下来的最大期望概率。
\(Solution\)
人要活下来,一定是所有的老虎都死亡,而老虎只能和老虎两两同归于尽。
所以如果老虎数量为奇数,那鹿总有一天会被吃完,人一定不能存活;
如果老虎数量为偶数,则考虑老虎同归于尽的概率即可。
因为鹿不会对人和老虎的数量产生任何影响,只有老虎对人存活产生影响;老虎唯一死亡的方式就是两只老虎碰面。
所以可以忽略鹿。在无限时间里,只要有老虎,鹿是一定被吃光的。
计算:不考虑鹿,总的可能数是C[t+1,2],即老虎和人中选2个;
从t个老虎中选择两个的总数是C[t,2]。所以每次两只老虎同归于尽的概率是 C[t,2]/C[t+1,2] = (t-1)/(t+1)
答案就是所有概率相乘。(老虎的数量是一直在改变的)
从题目出发对问题进行简化。
#include<cstdio>
#include<cctype>
using namespace std;
inline int read()
{
int now=0;register char c=getchar();
for(;!isdigit(c);c=getchar());
for(;isdigit(c);now=now*10+c-'0',c=getchar());
return now;
}
int main()
{
int ts=read(),ks=0,t,d;
double ans;
while(ts--)
{
t=read(),d=read();
if(t&1)
{
printf("Case %d: 0\n",++ks);
continue;
}
ans=1.0;
while(t)
{
ans*=1.0*(t-1)/(t+1);
t-=2;
}
printf("Case %d: %.7lf\n",++ks,ans);
}
return 0;
}
LightOJ.1265.Island of Survival(概率)的更多相关文章
- LightOJ - 1265 Island of Survival —— 概率
题目链接:https://vjudge.net/problem/LightOJ-1265 1265 - Island of Survival PDF (English) Statistics F ...
- LightOJ - 1265 Island of Survival (概率dp)
You are in a reality show, and the show is way too real that they threw into an island. Only two kin ...
- [LightOJ 1265] Island of Survival
Island of Survival You are in a reality show, and the show is way too real that they threw into an i ...
- LightOj 1265 - Island of Survival(概率)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1265 题目大意:有一个生存游戏,里面t只老虎,d只鹿,还有一个人,每天都要有两个生物碰 ...
- LightOJ - 1265 Island of Survival 期望
题目大意:有一个生存游戏,里面t仅仅老虎,d仅仅鹿,另一个人,每天都要有两个生物碰面,如今有下面规则 1.老虎和老虎碰面.两仅仅老虎就会同归于尽 2.老虎和人碰面或者和鹿碰面,老虎都会吃掉对方 3.人 ...
- LightOJ 1065 Island of Survival (概率DP?)
题意:有 t 只老虎,d只鹿,还有一个人,每天都要有两个生物碰面,1.老虎和老虎碰面,两只老虎就会同归于尽 2.老虎和人碰面或者和鹿碰面,老虎都会吃掉对方 3.人和鹿碰面,人可以选择杀或者不杀该鹿4. ...
- Island of Survival 概率
#include <cstdio> #include <iostream> #include <cstring> #include <algorithm> ...
- LightOj:1265-Island of Survival
Island of Survival Time Limit: 2 second(s) Memory Limit: 32 MB Program Description You are in a real ...
- LightOJ - 1265 (概率)
题意: 1.两只老虎相遇 就互相残杀 2.老虎与鹿相遇 鹿死 3.老虎与人相遇 人死 4.人与鹿相遇 鹿死 5.鹿与鹿相遇 无果 求人活的概率 解析:如果老虎为0 则人活得概率为1 ...
随机推荐
- BN讲解(转载)
本文转载自:http://blog.csdn.net/shuzfan/article/details/50723877 本次所讲的内容为Batch Normalization,简称BN,来源于< ...
- [转]GDB-----2.watchpoint
TODO需要在ARM下验证 1. 前言 watchpoint,顾名思义,其一般用来观察某个变量/内存地址的状态(也可以是表达式),如可以监控该变量/内存值是否被程序读/写情况. 在gdb中可通过下面的 ...
- springboot系列六、springboot配置错误页面及全局异常
一.spring1.x中处理方式 @Bean public EmbeddedServletContainerCustomizer containerCustomizer() { return new ...
- linux软链接和硬链接的区别
硬链接:ln 3.txt 4 相当于把源文件复制了一份 软连接:ln -s 3.txt 5 相当于快捷方式 改动源文件4.5同时更新,删除3.txt ,5不存在,4存在的.
- 记录entityframework生成的sql语句
Interceptors (EF6.1 Onwards) Starting with EF6.1 you can register interceptors in the config file. I ...
- Linux版本Membase无法写入default bucket的问题分析
最近项目中使用的membase发现出了点问题,生产环境中读写各种数据都正常,可是新搭建的开发环境下,只有default bucket写不进去数据,调用store总是返回FALSE,配置文件也是一模一样 ...
- CentOs 6.6里kdump启动失败的原因
在VMware中新安装了CentOs 6.6,重启系统发现kdump服务启动失败 先来说一下,什么是kdump kdump 是一种先进的基于 kexec 的内核崩溃转储机制.当系统崩溃时,kdump ...
- js检测当前设备是移动端还是PC端
加上下面js即可 硬核判断: <script type="text/javascript"> //平台.设备和操作系统 var system ={ win : fals ...
- SpringMVC(3):DispatcherServlet详解
原文出处: 张开涛 3.1.DispatcherServlet作用 DispatcherServlet是前端控制器设计模式的实现,提供spring Web MVC的集中访问点,而且负责职责的分派,而且 ...
- python 全栈开发,Day133(玩具与玩具之间的对话,基于jieba gensim pypinyin实现的自然语言处理,打包apk)
先下载github代码,下面的操作,都是基于这个版本来的! https://github.com/987334176/Intelligent_toy/archive/v1.6.zip 注意:由于涉及到 ...