当前位置: 首页 > news >正文

【面试题】智力题

文章目录

  • 腾讯
    • 1000瓶毒药里面只有1瓶是有毒的,问需要多少只老鼠才能在24小时后试出那瓶有毒。
    • 有两根不规则的绳子,两根绳子从头烧到尾均需要一个小时,现在有一个45分钟的比赛,裁判员忘记带计时器,你能否通过烧绳子的方式来为这场比赛计时?
    • 有25匹马,5条赛道,每条赛道同时只能有一匹马跑,假设每匹马的水平都很稳定,在没有计时器的情况下最少需要比几场才能确定前三名。

该文章记录一些面试中的智力题目。

腾讯

1000瓶毒药里面只有1瓶是有毒的,问需要多少只老鼠才能在24小时后试出那瓶有毒。

题目来源:最累的一场面试,还得是腾讯!


参考:这是一个经典的二分法或者说是二进制的问题。对于1000瓶药,可以用二进制表示为从0000000000(0)到1111101000(1000)的范围,总共需要10位。因此,需要10只老鼠来试出哪一瓶是有毒的。具体的实施方案就是,将每一瓶药对应到一个二进制的数字,然后让对应到1的位置的老鼠去试那一瓶药。这样,24小时后,只需要看哪些老鼠死了,就能确定哪一瓶药是有毒的。


老鼠的死亡状态分 0-1,n 个老鼠就可以确定 2^n 个状态,即判断这么多瓶毒药中哪瓶是有毒的。

有两根不规则的绳子,两根绳子从头烧到尾均需要一个小时,现在有一个45分钟的比赛,裁判员忘记带计时器,你能否通过烧绳子的方式来为这场比赛计时?

题目来源:https://leetcode.cn/circle/discuss/ZrlHEG/


注意!:绳子是不均匀的!也就是说燃烧的时间和烧到绳子的长度没有关系。

如果绳子是规则均匀的,我们可以通过对折的方式把绳子标记为4段,点燃一端,烧到提前标记的3/4处就是45分钟。

但是本题的前提是绳子是不规则的,这个时候能不能解答出来的关键在于你有没有意识到一根绳子同时点燃两头,燃烧完的时间为30分钟。

基于上面的思路,我们先给两根绳子编个号分别为A绳和B绳,点燃A绳的一端,同时点燃B绳的两端,当B绳烧完的时候时间就过去30分钟,这个时候A绳还需要30分钟才能烧完,但是如果我们在B绳烧完的时候点燃A绳的另一端,两端同时烧A绳就还需要15分钟可以烧完。这样两根绳子烧完总用时45分钟,所以我们可以通过烧绳子的方式来为这场比赛计时。

有25匹马,5条赛道,每条赛道同时只能有一匹马跑,假设每匹马的水平都很稳定,在没有计时器的情况下最少需要比几场才能确定前三名。

题目来源:https://leetcode.cn/circle/discuss/V6ZITu/


7 场!

25匹马分成5组,每组先进行一次比赛,这就要比5场。

我们给每个小组内进行完比赛的马进行标号,排名依次递减:Ai > Bi > Ci > Di > Ei,5 >= i >= 1。

五场比赛后确定了每个小组内的名次,接下来只需要把每个小组的第一名拿出来A1 A2 A3 A4 A5比一次,确定每个小组第一名的排名。假设结果是 A1 > A2 > A3 > A4 > A5,我们会得到下面的矩阵:

在这里插入图片描述
这样确定第一名A1。

根据上面的矩阵规律,可以确定第二名只能从B1和A2之间产生,接下来我们针对这两种情况来进行分别讨论。

如果第二名是B1,那么第三名只能从A2 B2 C1 之间产生。

在这里插入图片描述
如果第二名是A2,那么第三名只能从B1 B2 A3 之间产生。
在这里插入图片描述
所以只需要再将 A2 A3 B1 B2 C1这5匹马比一次就能确定第二名和第三名。
总共的比赛场次是5+1+1=7,最少需要比7场可以确定前三名。

http://www.lryc.cn/news/169547.html

相关文章:

  • 【SpringBoot集成Redis + Session持久化存储到Redis】
  • day49:QT day2,信号与槽、对话框
  • Meta分析核心技术
  • Gof23设计模式之责任链模式
  • 数字孪生和元宇宙:打造未来的数字边界
  • 【新版】系统架构设计师 - 软件架构设计<新版>
  • Linux面试题
  • NODEJS版本管理工具
  • 【个人笔记本】本地化部署 类chatgpt模型 详细流程
  • RFID与人工智能怎么融合,RFID与人工智能融合的应用
  • 性能测试 —— Jmeter 常用三种定时器
  • 每个高级前端工程师都应该知道的前端布局
  • 100道基于Android毕业设计的选题题目,持续更新
  • idea显示git分支信息(GitToolBox插件)
  • Hadoop知识点之Hadoop发展历程
  • 阿里云无影电脑:免费体验无影云电脑3个月
  • 菜鸟教程《Python 3 教程》笔记(20):面向对象
  • vue2编辑markdown
  • PCB走线规则
  • webpack静态资源上传到CDNS (阿里云 OSS,亚马逊 AWS S3,七牛云 Qiniu Cloud Kodo)webpack-plugin-cdns
  • python 异常
  • stm32--独立看门狗
  • vue3中css使用script中定义的变量
  • Ubuntu 22.04 安装配置 flatpak
  • oracle创建数据库以及用户,并导入dmp格式数据
  • [deeplearning]pytorch实现softmax多分类问题预测训练
  • 【C++初阶】动态内存管理
  • Mac电脑安装Zulu Open JDK 8 使用 spring-kafka 消费不到Kafka Partition中的消息
  • CodeArts Check代码检查服务用户声音反馈集锦(2)
  • 红帽RHCE9.0学什么内容,新版有什么变化