博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
杀人游戏[中山市选2011]
阅读量:6456 次
发布时间:2019-06-23

本文共 1627 字,大约阅读时间需要 5 分钟。

题目描述

一位冷血的杀手潜入 Na-wiat,并假装成平民。警察希望能在 N 个人里面,

查出谁是杀手。 
警察能够对每一个人进行查证,假如查证的对象是平民,他会告诉警察,他
认识的人, 谁是杀手, 谁是平民。 假如查证的对象是杀手, 杀手将会把警察干掉。 
现在警察掌握了每一个人认识谁。 
每一个人都有可能是杀手,可看作他们是杀手的概率是相同的。 
问:根据最优的情况,保证警察自身安全并知道谁是杀手的概率最大是多
少?

 

输入

第一行有两个整数 N,M。 

接下来有 M 行,每行两个整数 x,y,表示 x 认识 y(y 不一定认识 x,例如敬爱的胡爷爷) 。

 

输出

仅包含一行一个实数,保留小数点后面 6 位,表示最大概率。

 

样例输入

5 4 1 2 1 3 1 4 1 5

样例输出

0.800000

提示

警察只需要查证 1。假如1是杀手,警察就会被杀。假如 1不是杀手,他会告诉警

察 2,3,4,5 谁是杀手。而 1 是杀手的概率是 0.2,所以能知道谁是杀手但没被杀的概

率是0.8。对于 100%的数据有 1≤N ≤  10 0000,0≤M ≤  30 0000

 

【题解】

       看了提示也没参悟到调查的未知身份人越少,危险越小这个道理。虽然刚开始是有这样的意识的,但是后来走上了一条名为“推式子”的不归路,然后就……有我这样的队友,警察是非阵亡不可啊。

       所谓的概率题,除了最后结果是个double型还和概率有什么关系?!其实是个tarjan缩点题。凡是成环的,只要调查其中一个人就可以了。最关键的是其中一种特殊情况,有一个点完全孤立或有一个点没有入度且出度全都被别的点调查过,就没有调查他的必要了。考试后期想这个情况是否可行想了很久,没有个所以然。到底是在疑虑什么啊这种明显符合生活常理的情况,警察叔叔非阵亡不可+1。最大概率题,并不能拘泥于式子,毕竟大多数式子都是完全客观完全平均地选择各种方案,而这道题明显是涉及到方案选择的。

#include
#include
#include
#include
using namespace std;const int sj=100010;int n,m,e1,e2,h[sj],l[sj],a1,a2,dfn[sj],low[sj],c[sj];int s[sj],cnt,fa[sj],bi,hz,su[sj],cd[sj],rd[sj];bool r[sj];struct B{ int ne,v,u;}b[sj*3];struct T{ int ne,v;}t[sj*3];void ad1(int x,int y){ b[e1].v=y; b[e1].u=x; b[e1].ne=h[x]; h[x]=e1++;}void ad2(int x,int y){ t[e2].v=y; t[e2].ne=l[x]; l[x]=e2++;}void init(){ scanf("%d%d",&n,&m); memset(h,-1,sizeof(h)); memset(l,-1,sizeof(l)); for(int i=1;i<=m;i++) { scanf("%d%d",&a1,&a2); ad1(a1,a2); } for(int i=1;i<=n;i++) fa[i]=i;}int bj(int x,int y){ return x

 

 

 

转载于:https://www.cnblogs.com/moyiii-/p/7252583.html

你可能感兴趣的文章
doc2vec使用说明(一)gensim工具包TaggedLineDocument
查看>>
intellij maven配置与使用
查看>>
SpringMVC文件下载与JSON格式
查看>>
Q:图像太大,在opencv上显示不完全
查看>>
修正锚点跳转位置 避免头部fixed固定部分遮挡
查看>>
linux下ping不通的解决方法
查看>>
利用ItextPdf、core-renderer-R8 来生成PDF
查看>>
irc操作小记
查看>>
JAVA 与 PHP 的不同和相同
查看>>
NavigationController的使用
查看>>
多线程编程之Windows环境下创建新线程
查看>>
CentOS 7使用systemctl如何补全服务名称
查看>>
Unity3D NGUI 给button按钮添加单间事件
查看>>
密码的校验.大小写字母,数字,特殊字符中的至少3种
查看>>
ios 不同sdk4.3 6.0版本号,关于方法的兼容性的通用方法
查看>>
Shell编程学习总结
查看>>
构建之法阅读笔记02
查看>>
Webstorm常用快捷键备忘
查看>>
js滚动加载到底部
查看>>
Redis慢查询,redis-cli,redis-benchmark,info
查看>>