- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
100(或一些偶数 2N :-))囚犯在房间 A 中。他们从 1 到 100 编号。
一个接一个(从 1 号囚犯到 100 号囚犯,按顺序),他们将被带到 B 房间,里面有 100 个箱子(编号从 1 到 100)等着他们。在(闭合的)方框内是从 1 到 100 的数字(方框内的数字是随机排列的!)。
进入 B 房间后,每个囚犯可以打开 50 个盒子(他选择打开哪个)。如果他在这 50 个箱子中的一个中找到分配给他的号码,囚犯就可以走进 C 房间,并且在下一个从 A 房间走进 B 房间之前再次关闭所有箱子。否则,所有囚犯(在房间 A、B 和 C)被杀死。
在进入 B 房间之前,囚犯可以就策略(算法)达成一致。房间之间无法通信(B 房间也不能留言!)。
是否有一种算法可以最大化所有囚犯存活的概率?该算法实现的概率是多少?
注意事项:
随机做事(你称之为“无策略”)确实为每个囚犯提供了 1/2 的概率,但所有囚犯幸存的概率为 1/2^100(这是非常低的).可以做得更好!
犯人不得重新排列箱子!
如果囚犯第一次找不到他的号码,所有囚犯都会被杀死。 并且无法进行通信。
提示:一个人平均可以拯救 30 多个囚犯,远远超过 (50/100) * (50/99) * [ ...] * 1
最佳答案
这个谜题在 http://www.math.princeton.edu/~wwong/blog/blog200608191813.shtml 有解释。而且那个人在解释问题方面做得更好。
“所有囚犯都被杀”的说法是错误的。“你平均可以节省 30+”也是错误的,article说 30% 的时间你可以拯救 100% 的囚犯。
关于algorithm - 在一个盒子里找到你自己的号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34345/
我有一个设计。我在这里遇到一个问题。 我要做的是,我必须显示前 3 个 li 标签的 100% 宽度,并保留 li 标签的 33.33%。 这是我的预期输出 li-100% width li-100%
用例: 对于我的 angularJS(1.6.4) 应用程序,我正在用 jasmine 编写单元测试。 在我的测试用例中,我调用了一个 poll() 函数,该函数使用 $interval 反复调用另一
如何在 hookdisplayTop 中获取当前产品? 这是我确保我在“产品”页面中的当前方式: if ( Dispatcher::getInstance()->getController() ==
我有一个带有“li”-s 的导航菜单。我想像这样把这个 li 变成六 Angular 形: 我该怎么做? 最佳答案 我会使用带边框的伪元素。 * { margin: 0; paddin
我是 JQuery 的新手。我试图基本上允许访问者在我的网站上的两种颜色主题之间进行选择。当他们单击浅色主题的链接时,除了我的导航菜单中的各种元素外,所有内容都会按预期改变颜色。这是 JQuery:
所以我试图在我的 Accordion 中的一些文本下面实现一个日期。 文本和图像由用户插入到 wordpress 的文章部分,日期应始终显示在文本下方。但是一直报错,一直在1970。 下面的代码:
我需要在一段时间内将测试数据提供给 Swing 间隔。数据集需要很长时间才能解析,所以我使用 SwingWorker 在后台解析它。在将数据馈送到 GUI 时(例如,每秒一个项目),我可以从 Swin
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 prev next function showPage(page) { var listItems =
里?
我有一个小程序,其中有冰淇淋口味列表,计算机使用“console.log();”打印一个句子和味道。我已经开始了这个项目,它看起来像这样: var randomFlavour = Math.rando
我想创建自定义 toast,其中一个 View 有点脱离父 View 。所以我做了这样的事情 这是我定制的 toast round_button.xml
在过去的 6 个月里,我一直在从 repl 运行我的 Clojure 应用。 也就是说,每当我想运行该应用程序时,我都会加载一个 clojure repl,然后输入:(load-file "src/r
我想在我的网页的整个主体周围添加一个边框。 我创建了一个布局,其中包含一个主体,其中包含多个 div 标签。我添加了我认为会在所有内容周围放置边框的 CSS。不幸的是,出于某种原因,我布局中的最后两个
我有一个无序列表 (ul),我正在尝试制作 3 列。当我有 4 个 li's 时,它只显示 2 列。我怎样才能让它有 3 列和 4 个 li ? 此外,我希望 li 从左到右,而不是从上到下,如下所示
我目前正在使用 JPA 创建一个批处理,其层次结构为 Tasklet-> 访问器-> 服务-> 处理器,并且我正在使用 Glassfish 作为我的数据库。但当我运行时` [ERROR] [com.a
到目前为止我有这个: $(".actor ul li").not($(".actor ul li").slice(0,11)).hide(); 我还想从 hide() 中排除最后一个 li。我该怎么做
我必须使用 tools.jar 中的库并因此添加了此依赖项: com.sun tools 1.6.0 system ${java.home}/../lib/t
if(BrowserDetect.browser=="safari"){document.write('')} 我可以在 html 文档的底部放置条件注释吗? (在体内)还是应该在头部? 就页面速度
我是一名优秀的程序员,十分优秀!