滴滴2016面试题

现在有10个人被一个魔鬼逮住了。魔鬼对于直接把人杀掉的方法不感兴趣了。于是,他就想了一个杀人的新花样。是这样的,一天晚上,魔鬼向着十个人宣布了游戏规则,即明天早上他要把10个人排成一排,然后从一堆既有无限多的白帽子混着无限多黑帽子的帽子堆为每个人随机抽取一顶帽子,给他们10个人都戴上帽子。因为10个人是排成一排的,所以排在第10个的人可以看到前面9个人帽子的颜色,排在第9个人可以看到前面8个人的帽子的颜色,…以此类推。然后,魔鬼会从排在第10个人开始,问他,你头上的帽子的颜色是白色还是黑色,如果答对了,就放他走;如果答错了,就被杀掉。然后同样问排在第9位的人,然后问排在第8位的人,….以此类推。在这其中,10个人所能做的只有当他被魔鬼问到的时候,答白色或者黑色。不能有超越此范围的任何行动,不然,魔鬼会把它们10个人全部杀死。

现在魔鬼给他们10个人一晚上的时间去商量一个对策,使得他们中能存活下来的人越多越好。请问,你会有什么样的对策,请计算出按照你的对策执行时最坏的情况下,他们中能有多少人能100%够活下来?期望能活下来的人数又是多少?

第十个人说第九个人的颜色,第八个人说第七个人的颜色,这样5个人100%会活。

最好的方法能让9个人100%活,只有最后一个人50%几率活下来。

方法:黑帽子0表示,白帽子1表示,假设他们10个人的帽子是

0 1 1 0 1 1 0 1 0 1

第十个人回答前9个人帽子的1的奇校验结果,1是奇数个就说1,1是偶数个就说0,例子中他说1,第九个人知道了前面8个人有奇数个1,结合第十个人人的结果,他知道自己是0,第八个人知道第九个人是0,他又能看到前面7个有4个1,结合第十个人有奇数个1的结论,他得出自己是1,以此类推。最后前9个人都能活下来。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
⾯试题: ⾯试题:robotframework题 题 根据我之前总结的robotframework笔记,相信这些题不在话下,否则的话,只能再去回顾⼀遍啦! 01: :RF⽀持的四种表? ⽀持的四种表? Setting,Variable,Testcase,keywords 02:⽤例配置部分 :⽤例配置部分[Template]是什么意思? 是什么意思? 声明该⽤例是模板关键字驱动的,本⽤例只包含测试数据 03: :Variables表主要是做什么的? 表主要是做什么的? 声明全局变量表 04: :展开 展开list每个元素和 每个元素和dict的每个元素分别是什么? 的每个元素分别是什么? list:@{var} dict:&{var} 05: :如何 如何py⽂件⾃⼰定义关键字? ⽂件⾃⼰定义关键字? 函数前加个装饰器@keyword('⾃⼰定义') 06: :如果报找不到模块错误,在执⾏命令上加什么参数? 如果报找不到模块错误,在执⾏命令上加什么参数? --pythonpath或-P 07: : 如何指定执⾏测试⽤例和测试套件、 如何指定执⾏测试⽤例和测试套件、 --test指定测试⽤例,--suite指定测试套件 08: :如何给测试⽤例打标签?默认标签如何设置? 如何给测试⽤例打标签?默认标签如何设置? 在⽤例⾥通过[tags]去定义,默认标签在setting表Default Tags 09: :如何按标签去执⾏测试⽤例? 如何按标签去执⾏测试⽤例? 参数加个--include 标签 10: :rf⾥相当于 ⾥相当于python的 的break和 和continue的关键字是? 的关键字是? Exit For Loop和Continue For Loop
RobotFramework⾯试题 ⾯试题 什么是 什么是 RF 基于可扩展关键字驱动的⾃动化测试框架 什么是可扩展关键字驱动 什么是可扩展关键字驱动 可扩展意味着可以⾃⼰开发,也可以调⽤第三⽅的关键字库 关键字驱动意味着测试⽤例都是围绕着关键字运⾏的 RF 的原理(框架?) 的原理(框架?) 测试数据和关键字库都是⾃⼰准备的 编写测试⽤例后,RF 解析测试数据,执⾏测试⽤例,最终⽣成测试报告 RF 只是⼀个⼯具,并没有和被测系统发⽣真实交互 RF ⽀持哪四种表? ⽀持哪四种表? Settings:全局配置表 Test Cases:测试⽤例集 Variables:全局变量表 Keywords:⽤户⾃定义的关键字表 ⽤例配置部分,想加前置、后置操作怎么写? ⽤例配置部分,想加前置、后置操作怎么写? [Setup] [Teardown] 如何给测试⽤例打标签 如何给测试⽤例打标签 在⽤例⾥⾯添加 [Tags] 如何按标签去执⾏测试⽤例 如何按标签去执⾏测试⽤例 命令⾏运⾏时,加命令⾏参数 --include 标签名 如何展开 如何展开list每个元素和 每个元素和dict的每个元素分别是什么? 的每个元素分别是什么? list:@{var} dict:&{var} 如果报找不到模块错误,在执⾏命令上加什么参数? 如果报找不到模块错误,在执⾏命令上加什么参数? --pythonpath 或 -P 如何指定执⾏测试⽤例和测试套件? 如何指定执⾏测试⽤例和测试套件? 命令⾏运⾏,加命令⾏参数:--test 指定测试⽤例,--suite 指定测试套件 rf ⾥相当于 ⾥相当于python 的 的 break 和 和 continue 的关键字是? 的关键字是? Exit For Loop和Continue For Loop

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值