说明:小蒟蒻hkk现在正在做一些概率的题目,由于这方面和数学还有点关系,所以需要一些数学的思维,也需要表述出来,如夏军所述“把自己给讲懂”,所以写了些blog,主要为帮助自己理解。

题目大意

你和人决斗。决斗规则如下:用一把有n个弹槽的左轮手枪,对着自己脑袋来一枪,孰生孰死看天意。现在对方已经装了若干发子弹,并随机转了一下转轮,子弹呢用一个01序列表示,0表示这个弹槽无子弹,1表示有子弹。对方先对着自个脑袋开了一枪,嗯,你只听到了一声’click’,人还好好的,是空枪。现在轮到你了,摆在你面前的有两个选择,一是直接对自己开射,二是转一下转轮再来开射,显然你会选择生还希望更大的那种。

现在要做的就是根据子弹装填的序列,进行判断,如果直接shot生还希望大输出”SHOOT”,如果转一下生还希望大输出”ROTATE”,两种选择生还希望相同输出“EQUAL”.

##理解题意

一个手枪槽应该是这样的样子

这样的一个手枪槽,现在,三角形指向的位置为即将发射的子弹的位置,在发射之前,可以转一下手枪槽,但是并不知道能转到什么位置。现在对方已经发射了一个空枪,然后槽转了一格,但是不知道那一个是否为空,现在要判断是转一下以后开枪还是直接开枪没有子弹的概率大。

##思路

假设我们没有转手枪,那么我们如果想要让下一刻子弹为空,说明我们必须是在连续的两个空弹上。所以我们假设有a个空弹,b个连续的空弹,n为总弹槽数,事件A为该弹为空,B为下一个子弹为空,则

\(P(B|A)=\frac{P(AB)}{P(B)}=\frac{\frac{b}{n}}{\frac{a}{n}}=\frac{b}{a}\)

还有一种情况为我们转了一下,那么,这个就比较简单了,对于发射空弹这个事件,有$$P(A)=\frac$$

那么,我们最终就只需要比较$P(B|A)$与$P(A)\(即可。也就是比较\)\frac\(与\)\frac$的大小。这里说一下,根据不等式的性质,由于a,b,n都是非负整数,所以我们把式子去一下分母,不等号方向也不用变,就变成比较$bn$与$a^2$的大小,就不需要进行浮点数运算了。

##代码

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
using namespace std; const int maxn=100+7;
int n,cnt1,cnt2,cnt3;
int x,y;
char s[maxn]; void Init(){
cnt1=cnt2=cnt3=0;
scanf("%s",s+1);
if(feof(stdin))exit(0);//读到文件末结束
n=strlen(s+1);
s[n+1]=s[1];//由于是环形,这样做比较方便
} void Work(){
for(register int i=1;i<=n;++i){
if(s[i]=='0'&&s[i+1]=='0')++cnt1,++cnt2;
else if(s[i]=='0'&&s[i+1]=='1')++cnt2;
if(s[i]=='0')++cnt3;
}
// cnt1:连续2个0的个数,cnt2:0的个数,cnt3和cnt2等价,cnt3是我一时发疯开的
x=cnt1*n;y=cnt3*cnt2;//交叉相乘
if(x==y)printf("EQUAL\n");
else if(x<y)printf("ROTATE\n");
else printf("SHOOT\n");
} int main(){
while(!feof(stdin)){
Init();
Work();
}
return 0;
}

——发布时间:2017-12-13 13:25:13

UVa1636 Headshot 【迁移自洛谷博客】的更多相关文章

  1. UVA10779 Collectors Problem 【迁移自洛谷博客】

    这是一道不错的练最大流建模的基础题. 这种题目审题是关键. Bob's friends will only exchange stickers with Bob, and they will give ...

  2. Uva10491 Cows and Cars 【迁移自洛谷博客】

    题目大意 假设有a头牛,b辆车(门的总数为a+b),你先选一个门,然后你最终选择前主持人会替你打开C扇有牛的门(不会打开你已经选择的门),问你要不要换门,输出"总是换门"的策略下, ...

  3. JSOI2018冬令营游记&总结(迁移自洛谷博客)

    游记 一开始在冬令营还没开始的时候,十分期待,殊不知每天都有一场浩劫在等着我. Day0 10:50出发,看见lbn同学发了一条说说,也随便发了一个. 然后在车上一直在睡觉,现在感觉挺后悔的,其实可以 ...

  4. 【洛谷 P4934】 礼物 (位运算+DP)

    题目链接 位运算+\(DP\)=状压\(DP\)?(雾 \(a\&b>=min(a,b)\)在集合的意义上就是\(a\subseteq b\) 所以对每个数的子集向子集连一条边,然后答案 ...

  5. 洛谷 P3958 奶酪

    谨以此题来纪念我爆炸的NOIp2017 这个题虽然很多人说是并查集,但是搜索也是毫无压力的,考场搜索细节写挂,爆了个不上不下的80分.今天无意看到这道题,终于AC 首先这道题要考虑一下精度问题,虽然出 ...

  6. 洛谷 P1019 单词接龙 (DFS)

    题目传送门 当时一看到这题,蒟蒻的我还以为是DP,结果发现标签是搜索-- 这道题的难点在于思路和预处理,真正的搜索实现起来并不难.我们可以用一个贪心的思路,开一个dic数组记录每个单词的最小重复部分, ...

  7. 洛谷 P1126 机器人搬重物 (BFS)

    题目链接:https://www.luogu.org/problemnew/show/P1126 吐槽:这题很阴险 一开始没把格子图转化成点图:30分 转化成点图,发现样例过不去,原来每步要判断vis ...

  8. 题解 洛谷 P2010 【回文日期】

    By:Soroak 洛谷博客 知识点:模拟+暴力枚举 思路:题目中有提到闰年然后很多人就认为,闰年是需要判断的其实,含有2月29号的回文串,前四位是一个闰年那么我们就可以直接进行暴力枚举 一些小细节: ...

  9. 洛谷p2370yyy2015c01的U盘题解

    没什么特殊的想法 就是看自己很久没有更新关于题解类的文章了而已 (其实这是我好久之前做的, 只是把它从洛谷博客搬到了这里而已) 题目 首先分析题目要二分 他长成这个亚子太二分了 所以就要二分 最好是先 ...

随机推荐

  1. php strripos()函数 语法

    php strripos()函数 语法 作用:寻找某字符串中某字符最后出现的位置,不区分大小写.大理石平台 语法:strripos(string,find,start) 参数: 参数 描述 strin ...

  2. 批量搞机(一):ansible简介、ansible安装

    一.ansible简介 Ansible是2013年推出的一款IT自动化和DevOps软件,目前由Redhat已签署Ansible收购协议.其是基于Python研发,糅合了很多老运维工具的优点实现了批量 ...

  3. day28-Javascript定时器的应用案例

    转行学开发,代码100天——2018-04-13 上篇文章中记录了定时器的用法,本篇通过两个常用案例进一步巩固定时器的应用. 案例一:消息框延时,如QQ中鼠标移动到头像,弹出一个信息框:移出后,消息框 ...

  4. openstack——glance镜像服务

    一.glance介绍:                Glance是Openstack项目中负责镜像管理的模块,其功能包括虚拟机镜像的查找.注册和检索等. Glance提供Restful API可以查 ...

  5. 设计模式 - 装饰器模式(Decorator)

    简介 场景 通过继承和关联都可以给对象增加行为,区别如下: 继承是静态的(无法在程序运行时动态扩展),且作用于所有子类.硬编码,高耦合. 通过装饰器可以在运行时添加行为和属性到指定对象.关联关系就是在 ...

  6. Android深度探索-卷1第五章心得体会

    S3C6410是由三星公司推出的一款低功耗.高性价比的RISC处理器,开发是,首先安装minicom串口调试工具: 第一步:检测当前系统是否支持USB转串口. Lsmod | grep usseria ...

  7. 高德WMTS规则

    新版 http://wprd0{1-4}.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1& ...

  8. 排序算法三:堆排序(Heapsort)

    堆排序(Heapsort)是一种利用数据结构中的堆进行排序的算法,分为构建初始堆,减小堆的元素个数,调整堆共3步. (一)算法实现 protected void sort(int[] toSort) ...

  9. servlet--context域

    ServletContext(重要) 一个项目只有一个ServletContext对象! 我们可以在N多个Servlet中来获取这个唯一的对象,使用它可以给多个Servlet传递数据! 与天地同寿!! ...

  10. Survey Results for Rebecca Murpheys Learning JavaScript Survey

    时间 2016-01-27 05:40:46  Raymond Camden's Blog 原文  http://www.raymondcamden.com/2016/01/25/survey-res ...