几个智力题

2024-05-12 15:58
文章标签 几个 智力题

本文主要是介绍几个智力题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 只有两个无刻度的水桶,一个可以装6L水,一个可以装5L水,如何在桶里装入3L的水

提示:这个问题的本质就是利用两个水桶的已知容量倒来倒去,问题的解法并不唯一。

  1. 先将5L的桶装满,将5L的桶的水倒入6L的桶中。这时5L的桶是空的,6L的桶中有5L的水
  2. 再将5L的桶装满,倒入6L的桶中。这时5L的桶有4L的水,6L的桶是满的
  3. 将6L的桶中的水倒掉,5L的桶的水倒入6L的桶中。这时5L的桶是空的,6L的桶中有4L的水
  4. 将5L的桶装满,倒入6L的桶中。这时5L的桶还有3L的水,6L的桶是满的。

2. 25匹马,5个赛道,每次只能同时有5匹马跑,最少比赛几次选出最快的马?

这个题目字节经常问,大概思想就是先分5组跑,跑出每组第一名,将每组第一名放到一起跑,找出25马的第一名,然后找出2、3名,一共需要7次

前五次:将25匹马放到5个赛道比赛,找出每个赛道的第一名。假设A1、B1、C1、D1、E1分别为每组的第一名,如下图。

第六次:将A1、B1、C1、D1、E1放到一个赛道上找出第一名,假设为A1,其他四名分别为B1、C1、D1、E1。这时第一名已经找到了,还需找到二、三名。因为C1的速度比D1和E1的速度快,所以赛道D和赛道E的所有马都被淘汰了。有机会成为二、三名的马为A2、A3、B1、B2、C1这五匹马,即前五名在这个区域,并且第一名为A1。如下图

第七次:将A2、A3、B1、B2、C1放到一个赛道找出前两名,再加上A1,这就找到前三名了。

延申:如果要找到前五名呢?

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

这个问题不太容易想到可以先记住答案,需要老鼠的数量为log21000log_2 1000log2​1000

为了简化问题,可以先假设有只有8瓶药水,其中有一瓶有毒,根据公式需要 log28=3log_2 8=3log2​8=3个老鼠

先将瓶子进行编号为0-7号,用位数表示老鼠,如下图,

将4、5、6、7号药水混合到一起喂给老鼠1,将2,3,6,7号药水混合喂给老鼠2,将1、3、5、7药水混合喂给老鼠3,观察老鼠是否中毒。

中毒的老鼠标号为1,未中毒的老鼠标号为0,将三只老鼠标号组合到一起即为有毒药水的标号。

例如,第老鼠1中毒,老鼠2未中毒,老鼠3中毒。**那么三只老鼠的二进制表示为101,即5号药水有毒。**因为老鼠1中毒,说明4、5、6、7号药水中含有毒的药水。老鼠2未中毒,说明2、3、6、7无毒。老鼠3中毒,说明1、3、5、7中有一瓶有毒。所以有毒的为5号药水,其实和直接将二进制转化为十进制的结果是一样的。

回到正题,如果有1000瓶药水,则需要10只老鼠,因为10位二进制足以表示0-999。

4.家里有两个孩子,一个是女孩,另一个也是女孩的概率是多少?

这是一个概率问题,答案是二分之一,看到这里脑瓜子嗡嗡的吧

这个问题我也是看了B站的视频分析才搞明白咋回事,题目多少有些歧义,面试时说清楚就行了。

已知家里有两个孩子A和B,其中一个是女孩,关键问题就在其中一个是女陔这句话上。

如果你理解为这个是指定了一个孩子为女孩,例如A为女孩,那么B也是女孩的概率显然为二分之一。

如果你理解为A或B有一个孩子是女孩,问另一个孩子也是女陔的概率,这就是三分之一了。因为两个孩子的性别只有男男、男女、女男、女女四种组合,男男被排除了,剩下三种组合均符合题意,所以是三分之一。

其实,题目本身应该是第二种理解的意思,告诉你了有一个是女孩并未明确说哪个是。但很多人看到题目就会先入为主,先指定了一个孩子为女孩,那另一个孩子为女孩的概率肯定是二分之一了,这是不正确的。

5.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?

这个问题的关键就是要知道绳子可以从两头烧

  1. 将绳子1从一段开始烧,同时将绳子2从两端烧,绳子2在半小时后烧完。
  2. 这时开始计时,将绳子1的另一端点燃,从计时开始绳子1烧完后是15分钟,然后点燃绳子3的一端,绳子3烧完需要一个小时。加上刚才的15分钟正好是1小时15分钟

6.一共12个一样的小球, 其中只有一个重量与其它不一样(未知轻重),给你一个天平,找出那个不同重量的球?

这个问题的思想是采用分治的思想。

  1. 将12个小球分为三组(因为分成两组不能找到重量不一样的球在哪组),为A组、B组、C组
  2. 将三组球分别两两称重,找到重量和另外两组不同的那一组(只要有两组可以使天平平衡,重量不一致的球必然在第三组)。假设坏的球在C组
  3. 将C组的球分成两组C1和C2,每组两个球,这时从A组和B组里找到两个正常的球,分别和C1和C2去称,天平不能平衡说明重量不一致的球就在哪组。假设在C1
  4. 将C1组的球分别和正常的球去称,天平不平衡时就能找到重量与其他不一致的球。

7.有10瓶药,每瓶有10粒药,其中有一瓶是变质的。好药每颗重1克,变质的药每颗比好药重0.1克。问怎样用天秤称一次找出变质的那瓶药?

  1. 将这10瓶药标好号1-10。
  2. 然后按照瓶子的标号取药,1号药瓶取1粒药,2号药瓶取2粒药,3号药瓶取3例药,以此类推,取完10瓶药一起放到天平上去称。如果没有变质的药,重量应该是55克,这时多出几克,几号药瓶就是变质的。例如55.3克,那么变质的药就是3号药瓶的。

8.你有两个罐子,50个红色弹球,50个蓝色弹球,如何将这100个球放入到两个罐子,随机选出一个罐子取出的球为红球的概率最大?

这个问题应该是这几道题中最简单的了,将一个红球放到一个罐子中,另一个罐子放49个红球和50个蓝球,这样随便选出一个罐子取出红球的概率是1/2 * 1 + 1/2 * 49 /(49+50),接近0.75。


作者:路人zhang
链接:https://juejin.cn/post/6991298043261911071
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

这篇关于几个智力题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/983075

相关文章

每天认识几个maven依赖(ActiveMQ+activemq-jaxb+activesoap+activespace+adarwin)

八、ActiveMQ 1、是什么? ActiveMQ 是一个开源的消息中间件(Message Broker),由 Apache 软件基金会开发和维护。它实现了 Java 消息服务(Java Message Service, JMS)规范,并支持多种消息传递协议,包括 AMQP、MQTT 和 OpenWire 等。 2、有什么用? 可靠性:ActiveMQ 提供了消息持久性和事务支持,确保消

uva 10061 How many zero's and how many digits ?(不同进制阶乘末尾几个0)+poj 1401

题意是求在base进制下的 n!的结果有几位数,末尾有几个0。 想起刚开始的时候做的一道10进制下的n阶乘末尾有几个零,以及之前有做过的一道n阶乘的位数。 当时都是在10进制下的。 10进制下的做法是: 1. n阶位数:直接 lg(n!)就是得数的位数。 2. n阶末尾0的个数:由于2 * 5 将会在得数中以0的形式存在,所以计算2或者计算5,由于因子中出现5必然出现2,所以直接一

使用JS/Jquery获得父窗口的几个方法(笔记)

<pre name="code" class="javascript">取父窗口的元素方法:$(selector, window.parent.document);那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document);如题: $(selector, window.top.document);//获得顶级窗口里面的元素 $(

Verybot的几个视频

1、Verybot的运动控制                 http://v.youku.com/v_show/id_XNjYxNjg4MTM2.html           2、Verybot比较初步的网络视频监控           http://v.youku.com/v_show/id_XNjYxNjkyMjg0.html           3、V

PHP原理之内存管理中难懂的几个点

PHP的内存管理, 分为俩大部分, 第一部分是PHP自身的内存管理, 这部分主要的内容就是引用计数, 写时复制, 等等面向应用的层面的管理. 而第二部分就是今天我要介绍的, zend_alloc中描写的关于PHP自身的内存管理, 包括它是如何管理可用内存, 如何分配内存等. 另外, 为什么要写这个呢, 因为之前并没有任何资料来介绍PHP内存管理中使用的策略, 数据结构, 或者算法. 而在我们

Java虚拟机垃圾回收的几个关键问题

20151008 GC的几个关键问题,触发条件,触发的机制 主线是数据的移动,从什么位置到什么位置,移动的条件是什么? 1 垃圾收集在什么时候触发? GC都是在带满了的时候触发的,每次触发都是把不会用的不可达的对象空间回收了,留下还在用的对象。 1) MinorGC的触发是伊甸园空间满的时候 2) FullGC的触发是在老年代满的时候 2 垃圾回收的时候做哪些工作? 1) 一个新的对象new出

【智力题】由Rand5()生成Rand7()

题目 给定生成1到5的随机数Rand5(),如何得到生成1到7的随机数函数Rand7()? 要从一个生成1到5的随机数的函数 Rand5() 中生成一个1到7的随机数的函数 Rand7(),我们可以利用均匀分布的性质和一些数学技巧。 方法概述 生成更大的范围:首先,我们可以通过调用 Rand5() 两次来生成一个更大的范围。具体来说,我们可以将两个 Rand5() 的结果组合成一个数字,形

智力题:25匹马5条跑道找最快的3匹马,最少需要跑几次?

要找出25匹马中最快的3匹马,使用5条跑道,最少需要跑几次?我们可以通过逐步推理来解决这个问题。 第一步:分组比赛 首先,我们将25匹马分成5组,每组5匹马。每组进行一次比赛,这样我们就有5次比赛的结果。 组1:A1, A2, A3, A4, A5 组2:B1, B2, B3, B4, B5 组3:C1, C2, C3, C4, C5 组4:D1, D2, D3, D4, D5 组

全网第一份 | Flink学习面试灵魂40问,看看你能答上来几个?

《2021年最新版大数据面试题全面开启更新》 答案将在下期给出。   概念和基础篇   简单介绍一下Flink Flink相比传统的Spark Streaming有什么区别?和Spark中的structured streaming 相比呢?Flink相比ss和storm有什么优势? Flink的组件栈是怎么样的? Flink的基础编程模型了解吗?

推荐几个顶级数据学习平台

今天分享几位资深大佬,他们都是数据领域的顶级专家,大家可以根据需要按需关注。 进击吧大数据 从事大数据行业多年,涉及范围包括基础支撑、计算引擎、数据整合、数据应用等方向。《大数据技术架构手册》编制者,目前带领团队建设实时数仓及主导数据治理。 一册在手,走遍天下(大数据技术架构手册之上篇十四万字问世) 大数据架构师 老彭,数字化老兵,历任多家公司大数据总监,仅代表个人观点。公众号分享大量干货,包括