面试逻辑题

2023-11-17

逻辑题目

逻辑题目现在也是面试中常考的题目,也不清楚面试出这种题目的意义,可能就是考察面试人员是否逻辑清晰. 这种题目没有什么好的方法,除非你见过原题,否则,只能根据所给出的条件慢慢分析,尽量不要用常规思路,希望大家要跳跃思维. 如果实在不行就给出一种解法,可能不是最优的,至少表示我们有逻辑.

1. 猜数字

题目:
两人玩游戏,在脑门上贴数字(正整数>=1),只看见对方的,看不见自己的,而且两人的数字相差1.

以下是两人的对话:
A:我不知道
B:我也不知道
A:我知道了
B:我也知道了
问A头上的字是多少,B头上的字是多少. 

解析: 只看见对方的,看不见自己的.

  1. 假设A头上的数字是x(x>=1); B头上的数字是y(y>=1).
  2. 条件1, A看到B头上的y,说不知道自己的是多少.
    确定y>=2, 这样的话x可以取两个值y+1,和y-1.
  3. 条件2: B看到x后,说我也不知道,同理可以确定,x>=2, y取值是x-1和x+1.
  4. 条件3, A说我知道了, 因为A的头上x取值是y-1和y+1, 尽然A说自己知道了, 肯定要排除y-1和y+1的其中的一个,现在有 x>=2, y>=2, 只有y=2的时候,y-1=1, 此时x只能是y+1=2, 如果x=1, B就可以直接知道自己的是2, A确定自己是3,之后,
  5. 条件4, B说他也知道了, A是3, B是2和4,只有自己是2的时候,A才可能知道自己是3.

2. 握手

题目:
五队夫妇甲、乙、丙、丁、戊举行家庭聚会,每一个人都可能和其他人握手,但夫妇之间绝对不握手,聚会结束时,甲先生问其他人: 各握了几次手?
得到的答案是: 0、1、2、3、4、5、6、7、8,试问:甲太太握了几次手? 确定一点每一对夫妇一定会有一个人和其他夫妇握手.

解析:
每一对夫妇一定会有一个人和其他夫妇握手. 所有一对夫妇握手的次数和一定是8.
记0、1…8这9个人分别为A0、A1…A8。
首先,A8和A0是夫妇。因为A0没有和其他任何人握手,而A8握了别家的所有人的手。
继续推导,A1和A7是夫妇。因为A1已经和A8握过1次手,A7必须和除了A0和自己配偶以外的所有人握手,因此,A1和A7只能是夫妇。
同理,A2和A6是夫妇,A3和A5是夫妇,
最后,A4和甲是夫妇。题目中4只出现一次,因而甲和甲的夫人都握了4次手。

3. 找出毒药

题目:
实验室里有8瓶饮料,已知其中有且仅有一瓶有毒,小白鼠喝了有毒的饮料后,将会在24小时后毒发身亡。实验室的小李需要在24小时后知道有毒的饮料是哪瓶,他可以使用小白鼠试喝饮料,请问,小李最少需要用几只小白鼠试喝饮料?

解析:

将8个瓶子进行如下编码:
(000)_2=0
(001)_2=1
(010)_2=2
(011)_2=3
(100)_2=4
(101)_2=5
(110)_2=6
(111)_2=7
编码后的0/1位表示一个老鼠,0-7表示8个瓶子。按照3个二进制位中每位是否为1分类,即最低位为1的1、3、5、7号瓶子的药混起来给老鼠1吃,次低位为1的2、3、6、7号瓶子的药混起来给老鼠2吃,最高位为1的4、5、6、7号瓶子的药混起来给老鼠3吃.
24小时后,哪个老鼠死了,相应的位标为1。如最低老鼠1死了、次低老鼠2死了、最高老鼠3没死,那么就是011=5号瓶子有毒。
即:n只老鼠可以最多检验2^n个瓶子。所有8个饮料最多用三个小白鼠.

4. 坏鸡蛋

题目: 有十二个鸡蛋,有一个是坏的(重量与其余鸡蛋不同)请问用天平最少称几次,才能称出哪个鸡蛋是坏的?

解析
题目中没有说明坏的蛋是比好的蛋重还是轻。本题可以将鸡蛋分成三份,每份四只。为表述方便,将鸡蛋编号为1到12。
第一次,取1234放在天平的左端,5678放在天平的右端。天平有两种情况,平衡或不平衡。
1)先分析天平平衡的情况:若平,则重量不同的蛋在剩下的4个中。
第二次用天平,任意取3个1到8号中的蛋放在天平的左端,从9到12号蛋中任意取3个(例如9,10,11)放在另右端,又有两种情况,平衡或不平衡
若平衡,则12号蛋为重量不同的蛋,第三次用天平,把12号蛋和其他任意一蛋比较,可以知道是轻还是重.
若不平衡,则可知重量不同的蛋在9,10,11这3个蛋中,并且可以知道他比其他蛋重还是轻,第三次用天平,任意取其中2蛋(例如9,10)放在天平两端,若平衡,则剩下的蛋(11号蛋)为要找的蛋,若不平衡,根据前面判断的该蛋是比较轻还是重可以判断天平上的其中一个蛋为要找的蛋.
2)下面分析第一次天平不平衡的情况。那么有左端重或者右端重两种情况,不妨假设左端重(如果是右端重也是一样的)。
现在第二次用天平,从左端任意拿下3个蛋(例如123),从右端拿3个蛋(例如567)放到左端,再从第一次称时剩下的4个蛋中任意拿3个(例如9,10,11)到右端,这时天平会出现3种情况:a)左端重,b)平衡,c)右端重。我们一个一个来分析。
a)左端重,那么要找的蛋肯定是4号蛋或者8号蛋。第三次用天平,把其中一蛋(例如4号蛋)放在天平左端,任意取其余10个蛋中的一个蛋放在右端,又有3种情况:
一)若平衡,则8号蛋为要找的蛋,并且根据第二次用天平的结果,可知比其余蛋轻。
二)若左端重,则4号蛋为要找的蛋,并且比其余蛋重。
三)若右端重,则4号蛋为要找的蛋,并且比其余蛋轻。
b)平衡,那么要找的蛋在从左端拿下的三个蛋(1,2,3)中,由于第一次用天平左端重,所以可知这个蛋比其余的蛋重,接下了来的分析和前面的一样,不再重复。
c)右端重,那么要找的蛋在从右端移到左端的3个蛋(5,6,7)中,并且由天平第一次左端重,第二次右端重可知,该蛋比其他蛋轻,接下来的分析同前面一样。
所以,需要称重三次。

5. 测半径

题目: 一个球、一把长度大约是球的直径2/3长度的直尺.你怎样测出球的半径?

解析:
在这里插入图片描述

6. 过河

题目: 有A、B、C、D四个人,要在夜里过一座桥。他们通过这座桥分别需要耗时1、2、5、10分钟,只有一支手电筒,并且同时最多只能两个人一起过桥. 请问,最短需要几分钟四人都能过桥?

解析:

A: 1
B: 2
C: 5
D: 10
  1. AB过去(花费2分钟),A回来(花费1分钟),共1+2=3
  2. CD过去,让花费时间相近的人一起走,可以降低时间的浪费(花费10分钟), B回来(花费2分钟),共10+2=12
  3. AB一起过去(花费2分钟),ABCD全部过来共花费3+12+2=17分钟.

7. 称石头

题目: 给你8颗小石头和一架天平,其中有7颗石头重量一样,另外一个比这7颗略重。请问在最坏情况下,最少要称重几次,才能把这颗较重的石头找出来?

解析:

分为332.进行称重

首先任取8个石子中的6个进行称重,天平两边都是3个石子.

  1. 如果重量相等
    再称剩下的两个石子即可找出重的.(2次)
  2. 如果不相等.
    取较重的一边的任意2个称重,如果相等则剩下的1个是重的,如不相等则较重的一个是要找的石子.(2次)

最少两次称重可以找出重的石头.

8. 倒水

题目: 假设有一个池塘,里面有无穷多的水. 现有2个空水壶,容积分别为5升和6升. 问题是如何只用这2个水壶从池塘里取得3升的水.

解析:

  1. 6升容器装满水, 将水把5升容器倒满, 则6升容器中剩下1升水.
  2. 清空5升容器,并将6升容器中的1升水倒入5升容器中.
  3. 6升容器装满水, 将水把5升容器倒满, 则6升容器中剩下2升水.
  4. 清空5升容器,并将6升容器中的2升水倒入5升容器中.
  5. 6升容器装满水, 将水把5升容器倒满, 则6升容器中剩下3升水.

9. 绳子时间

题目: 烧一根不均匀的绳子要用一个小时,如何用它来判断半个小时? 烧一根不均匀的绳子,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳子的方法来计时45分钟呢?:

解析:
1. 如何判断半个小时
将根绳子两头同时点燃,绳子全部烧完,就是半个小时.
2. 如何计时45分钟,
选择使用两个绳子A和B,将绳子A两头点燃,绳子B一头点燃.
当绳子A烧完已经过去30分钟,此时点燃绳子B的另一端,直到绳子B烧完一共是45分钟.

10. 植树

题目: 怎么样种植4棵树木,使其中任意两棵树的距离相等?

解析: 
从三维空间考虑,画出一个空间正四面体,使其所有的边的长度相同.

在这里插入图片描述

参考(copy)

  1. https://blog.csdn.net/linjcai/article/details/80868385
  2. https://www.julyedu.com/question/select/kp_id/1
  3. https://www.cnblogs.com/pang951189/p/7439670.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

面试逻辑题 的相关文章

  • Qt鼠标单击与长按

    在Qt中 可以通过重载QWidget的mousePressEvent mouseReleaseEvent 和mouseMoveEvent 等事件来实现对鼠标事件的处理 判断鼠标是长按还是点击 可以通过记录鼠标按下的时间和释放的时间 通过两个
  • 15.DDT+unittest+excel ddt框架结合单元测试

    Excel读取数据的三种方式 1 一次性读取所有的数据 对内存的要求高点 必须掌握 2 需要用的时候读取所有的数据 就是磁盘读写要求高点 磁盘 速度最低 内存 速度中间 CPU 速度最高 3 使用DDT进行参数化 方法一 一次性读取所有的数
  • 缓存相关

    缓存雪崩怎么解决 如果缓存因为某个原因不可用 导致大量请求涌向数据库 可能会导致数据库崩溃 缓存雪崩目前主要有两种方案 1 使用集群 集群部署缓存 当一台宕机时 其他机器仍能提供缓存服务 2 Hystrix 熔断器 起到熔断 降级 限流三个
  • 文章内容无法复制复制不了

    一些文档 什么的复制不了 主要有几种方法 目录 1 禁用js 2 ctrl P打印 3 选中要复制的内容 gt 拖到网址输入框 另外 通过一些浏览器插件 感觉用处不大 1 禁用js 优点 可以直接复制原有段落文字的格式 缺点 有点麻烦 对百
  • 通俗理解三大范式

    关系型数据库中我们用的最多的就是第一范式 1NF 第二范式 2NF 第三范式 3NF 所以需要我们深入理解三大范式 第一范式 1NF 要求数据库的每一列都是不可分割的原子数据项 在上面的表中 家庭信息 和 学校信息 列均不满足原子性的要求
  • Windows下C语言操作硬件设备的方法

    本文作者 Fezl 本文原地址 http blog csdn net u010147522 article details 49912221 之前都是在linux下操作硬件设备 open read write ioctl 相当方便 最近要检
  • jQuery 入门教程(23): jQuery UI Autocomplete示例(一)

    AutoComplete 在获取焦点后 随着用户键入的内容 可以在预订的数据源中查找和已输入的内容相匹配的内容列表供用户选择 这可以用作之前输入过的内容也可以用作自动填充相关内容 比如根据城市名 自动填充邮编等 你可以使用本地数据源或是远程
  • nvm的安装及使用、下载cnpm以及git的配置

    nvm下载 下载图中安装包 下载完了就有这个 双击安装 路劲把C改为D即可 这是直接下载选择好安装路劲之后 没配置的环境变量 配置后的环境变量 1 文件夹设置 2 环境变量配置 查询nvm版本号 nvm常用命令如下 使用nvm下载 node
  • 适合初学者的强化学习教程(1): python使用gym实践和注意事项

    作者 知乎 Ai酱 安装步骤和报错问题 安装 pip install gym 报错 AttributeError module gym envs box2d has no attribute BipedalWalker 这是因为gym没有安
  • C语言for循环必备练习题

    话不多说 直接上题 笔者的一贯要求 速度 1 作业标题 663 关于while 条件表达式 循环体 以下叙述正确的是 假设循环体里面没有break continue return goto等等语句 作业内容 A 循环体的执行次数总是比条件表
  • 构造函数初始化列表

    目录 一 初始化列表 二 初始化列表的使用 三 注意 1 每个成员变量在初始化列表中只能出现一次 初始化只能初始化一次 2 类中包含以下成员 必须放在初始化列表位置进行初始化 3 尽量使用初始化列表初始化 因为不管你是否使用初始化列表 对于
  • ubuntu16.04上利用opencv目标跟踪工具实现8种目标跟踪

    一共八种工具 八种工具包括 BOOSTING Tracker 和Haar cascades AdaBoost 背后所用的机器学习算法相同 但是距其诞生已有十多年了 这一追踪器速度较慢 并且表现不好 但是作为元老还是有必要提及的 最低支持Op
  • 操作系统面试题总结

    1 线程与进程的区别联系 2 进程通信方式有哪些 3 同步的方式有哪些 4 ThreadLocal与其它同步机制的比较 5 进程死锁的条件 第一题 1 线程是进程的一个实体 一个进程可以拥有多个线程 多个线程也可以并发执行 一个没有线程的进
  • [Unity 3D] DOTween 常用函数

    DOTween官方文档 http dotween demigiant com documentation php 一 控制变量 1 DOTween To static DOTween To getter setter to float du
  • 端口扫描介绍

    文章目录 1 端口的基本概念 2 端口的常见分类 3 端口扫描原理 1 端口的基本概念 端口 在计算机网络领域中是个非常重要的概念 它是专门为计算机通信而设计的 它不是硬件 不同于计算机中的 插槽 可以说是个 软端口 端口是由计算机的通信协
  • vue+Element-ui 导入excel文件生成json数据

    1 首先安装依赖 import XLSX from xlsx 2 建立读取excel文件的js文件 以便调用 importExcel js import XLSX from xlsx export function readExcel fi
  • java随笔:类成员

    类成员 1 介绍 在java中只能包含成员变量 方法 构造器 初始化块 内部类 接口 枚举 5种成员 其中static可以修饰成员变量 方法 初始化块 内部类 接口 枚举 用static修饰的成员就是类成员 类成员属于整个类 而不属于单独的
  • KLT(Kanade-Lucas-Tomasi )

    目录 光流法 KLT 原理 应用 目标跟踪算法主要分为两类 一类是传统的目标跟踪算法 粒子滤波 pf Mean Shift及KLT算法 或称Lucas光流法 另一大类是基于深度学习的跟踪算法 光流法 光流 Optical flow 其实是指

随机推荐

  • MySQL事务隔离级别、脏读、幻读、不可重复读现象及解决办法、快照读和当前读

    目录 一 事务隔离级别 二 脏读 幻读 不可重复读现象及解决办法 1 脏读 2 不可重复读现象 3 幻读现象 4 使用for update避免幻读 5 使用串行读避免幻读现象 三 快照读与当前读 1 理论 2 RR 下 快照建立时机 第一次
  • Tensorflow Serving 模型部署指南

    文章目录 1 Saver端 模型的离线训练与导出 1 1 saved model 模型保存与载入 1 1 1 简单场景 模型保存 1 1 2 简单场景 模型载入 1 1 3 使用SignatureDef 模型保存 1 1 4 使用Signa
  • 一开机checkingmedia_Win7系统开机提示Checking Media Presence如何解决

    Win7系统在开机的时候 总是会弹出各种各样的错误提示 比如最近就有win732位系统用户反映说开机的时候提示Checking MediaPresence 出现这样的问题可能是启动顺序问题导致的 现在给大家分享一下Win7系统开机提示Che
  • actuator--基础--01--介绍

    actuator 基础 01 介绍 1 介绍 是一个采集应用内部信息暴露给外部的模块 2 提供哪些的功能 健康检查 审计 指标收集 HTTP 跟踪 监控和管理Spring Boot 应用 2 1 访问方式 上述的功能可以通过HTTP 和 J
  • ‘sslSocketFactory(javax.net.ssl.SSLSocketFactory)‘ is deprecated

    sslSocketFactory javax net ssl SSLSocketFactory is deprecated 具体信息如下 public OkHttpClient Builder sslSocketFactory SSLSoc
  • Spring Boot实践 第二章 Spring boot 的配置文件

    前一章 我们创建了第一个spring boot 程序 这一章分享一下spring boot的配置方式和一些技巧 spring boot 的特性之一就是 配置简单 spring boot不再使用之前spring 的xml配置方式 xml的配置
  • Netty 性能测试(与Tomcat 对比)

    一直以来都认为 Netty 的性能会非常优秀 打算在适当的时候使用它来开发一些要求超高新能的服务 今天兴致勃勃的写了个简单的 HTTP 服务 同样也用 tomcat 写了一个对比的 jsp 页面 结果测试下来 感觉 Netty 的性能提升并
  • 【数据结构】查找算法:二分查找、顺序查找

    08年9月入学 12年7月毕业 结束了我在软件学院愉快丰富的大学生活 此系列是对四年专业课程学习的回顾 索引参见 http blog csdn net xiaowei cqu article details 7747205 查找算法 查找算
  • 企业微信免登录跳转自建应用

    项目场景 企业微信免登录自建H5应用 项目场景 已存在开发好的web程序 现在需要集成到企业应用里 预想的是新建一个企业微信应用 点击后直接免登录进入web程序应用 一 创建企业微信应用 首先 创建企业微信账户并进入管理后台 https w
  • MyBatis快速入门(一) 搭建环境和单表映射

    MyBatis简介 一说起对象关系映射框架 大家第一时间想到的肯定是Hibernate Hibernate作为一个著名的框架 功能十分强大 我们只需要配置好实体类和数据表之间的关系 Hibernate就会自动帮我们完成生成并执行SQL语句
  • hive使用时的用户权限问题

    0 jdbc hive2 node1 10000 gt create role root Error Error while processing statement FAILED Execution Error return code 1
  • 599. Minimum Index Sum of Two Lists

    Suppose Andy and Doris want to choose a restaurant for dinner and they both have a list of favorite restaurants represen
  • Java跨平台原理

    第二部分 Java跨平台原理 1 什么是平台 Java是可以跨平台的编程语言 那我们首先得知道什么是平台 我们把CPU处理器与操作系统的整体叫平台 CPU大家都知道 如果计算机是人 那CPU就是人的大脑 它既负责思维运算 又负责身体各部件的
  • Hadoop003-Hadoop的I/O操作

    1 数据完整性 重点词汇 1 校验和 checksum 2 复本因子 replication factor 3 一系列datanode组成的管线 4 fs checksum 5 distcp 2 压缩 文件压缩优点 1 减少存储文件所需要的
  • django启动服务器失败-已解决

    参考菜鸟教程 启动失败 解决办法 将python3改为python
  • android手机时钟、闹钟、计时器、秒表app源码

    简 介 此多功能闹钟界面采用TabHost框架 头部包含分别用LinearLayout水平布局显示四个标签闹钟 时钟 计时器和秒表 FrameLayout框架内部采用LinearLayout垂直布局 功能事件的基本实现分别有AlarmVie
  • MyBatis+MySQL 返回插入的主键ID

    需求 使用MyBatis往MySQL数据库中插入一条记录后 需要返回该条记录的自增主键值 方法 在mapper中指定keyProperty属性 示例如下 Xml代码
  • Unity里面实现单侧拉伸

    完成部分功能的时候 需要模型单侧拉伸 模型锚点不好修改下 可以通过父子物体的方式来实现修改锚点从而实现单侧拉伸 普通状况下锚点在中间 直接拉伸会从中间往两侧伸展 通过把目标对象挂靠在一个空的GameObject中 再把目标对象的一角对应在空
  • (详细安装python_pcl) python_pcl+windows+anaconda

    需要根据已有的python pcl whl文件的版本来创建对应anaconda虚拟环境的python版本 这里拿python pcl 0 3 0rc1 cp37 cp37m win amd64 whl 文件来举例 可以根据文件名cp37 来
  • 面试逻辑题

    逻辑题目 逻辑题目现在也是面试中常考的题目 也不清楚面试出这种题目的意义 可能就是考察面试人员是否逻辑清晰 这种题目没有什么好的方法 除非你见过原题 否则 只能根据所给出的条件慢慢分析 尽量不要用常规思路 希望大家要跳跃思维 如果实在不行就