逻辑思维训练题

2023-11-20

1.估算你所在城市理发店的数量

https://www.jianshu.com/p/1431daad2c62

这种思维方式的核心,就是把你要探索的结果用一个数理公式展示出来。我们用最开始的煎饼摊例子来看怎么算?就要用到:利润=收入-变动成本,而收入=客单价*流量*转化率,变动成本=煎饼数量*单位成本……。以此类推,一步步拆解每一个变量,就可以得到最后的结果。

 

案例分析

同样,这样的方式也就可以利用在计算厦门市理发店的数量这道题上

最开始,我第一个想到的是用厦门市总面积/理发店覆盖平均密度来计算,但是由于厦门市经济发展水平严重不均,这个平均密度的数据如果让我来猜测,可能会出现较大的误差,所以最后我决定采用供求视角来解决这个问题。从经济学的角度来看,一个细分市场在长期竞争中如果没有出现其他较大的变量,所有企业的利润都会趋向于0,最终达到一个动态平衡。在这个假设条件下,供需是会基本平衡的。所以我从需求侧出发列出了底层公式:厦门市理发店数量=市民年理发总次数/每个理发店年平均服务人数。

下面我们该拆解这两个细分概念:市民年理发总次数和每个理发店年平均服务人数。市民年理发总次数=男性理发人口*男性年理发次数+女性理发人口*女性年理发次数,每个理发店年平均服务人数=单店理发师平均数量*单位理发师日服务人数*365。

再进一步拆分市民年理发总次数。记得之前在某处看到过一个数据:厦门市常住人口500万人左右,而除去五分之一的无消费性理发需求者(不需要去理发店理发的人),比如秃头、长期蓄发者、和尚尼姑、父母代工的小孩子和头发生长缓慢或者子女代剪的老年人等等,可以说有400万人口存在消费性理发需求。按照自然人口性别分布来看,再结合厦门市产业特征,总体上可以认为厦门市男女性别比例较为自然状态,因此可以五五分,有消费性理发需求的男性200万人,女性200万人。按照我的日常经验,男性的理发频率要高于女性,男性一般一个月理一次发,因此一年理发12次;而女性大约三个月理一次发,一年理发4次。因此我们可以计算出厦门市市民年理发总次数=2000000*12+2000000*4,计算结果为32000000,也就是三千二百万次的理发需求,其中男女比例为3:1。

我们再进一步拆分每个理发店年平均服务人数。先回顾一下我们之前的公式:每个理发店年平均服务人数=单店理发师平均数量*单位理发师日服务人数*365。而根据经验,我将单店理发师平均数量定义为3人。虽然相较于我所在的较为繁华的思明区来说,3人有些少,但是其实占金字塔底层更为庞大体量的中小型理发店可能只有一两个理发师,因此平均数定义为3人可能都可能有放大之嫌。接下来是单位理发师日服务人数。单位理发师日服务人数=日工作时间/单位顾客服务时间,那么这里又出现了男女服务时间不同的问题,按照我的经验,男性理发服务时间一般短于女性。在这里我们将男性理发时间定义为平均30分钟,将女性理发(包含美发)时间定义为平均40分钟。之前提到了男女比例为3:1,因此按照男女比例加权之后,每个顾客所需时间平均为32.5分钟,即0.542小时。而根据我在理发时候和理发小哥的闲谈,得知他们每天上班时间在10小时左右。用上述数据,即可计算单位理发师日服务人数=10/0.542,结果是18.45人次,即每个理发师每天服务人数约为18.45人次,当然,不可否认的是,理发师其实也有忙闲时段之分,我们这里为了简便,按照我的常识进行了粗略的估计。进一步可以计算出每个理发店年平均服务人数=3*18.45*365,结果是20202.952人次。

准备工作基本完成,让我们回到最开始的底层公式:厦门市理发店数量=市民年理发总次数/每个理发店年平均服务人数。我们已经计算出:市民年理发总次数=32000000次,每个理发店年平均服务次数=20202.952次,所以前者除以后者,即可得到厦门市理发店的数量为32000000/20202.952=1583.92694,即大约为1600家!大功告成!

为了验证我的估算结果的准确性,我上网搜了一下相关数据,但可惜的是并没有搜到相关的统计结果。

问题实质

或许你会有个疑问?这样计算的目的是什么?为什么大公司爱考察这类问题?

其实这些问题的结果是多少并不十分重要,重要的是思路,因为解决这类问题的能力是一个人思维缜密性和常识储备(对日常生活的关注程度)的集中体现,而这两点能力合起来,就是一个人未来在工作中分析和解决问题的潜在能力。如果思维不够缜密,是难以在面试的短时间内将一个复杂的大问题拆分为一系列小问题的;而常识储备不够多,不但很难进行数理化有逻辑的拆分,即使拆分成功,也很难对每一个数据进行较为合理的赋值,最后可能得出一个离谱的数据。如果我计算出厦门市理发店的数量为200000家,这个数据合理吗?对一个区区500万人口的二线城市来说,答案自然是否定的。

日常应用

当然,这种思维方式自然不仅仅是能够应用在我们未来的面试中,其实它在生活中也有广泛的用武之地。我们日常生活中面对的问题几乎都是复杂问题,如果我们将一个个复杂问题进行拆解,最后得到一个个能够直接进行赋值,也就是能够被直接解决的小问题,那么生活中的很多大的问题也都能迎刃而解,同时我们在解决问题的过程中也能更有针对性,避免想一出是一出,眉毛胡子一把抓。

最后,也给你出一个思考题,请你估算一下你所在小区门口便利店的年利润,用用这个思维方式,你也会得益无穷。

 

2.推算一个城市的共享单车投放量和每日交易数量

链接:https://www.nowcoder.com/questionTerminal/562cee797e25429eb12dcb73dd935f44?orderByHotValue=0&mutiTagIds=763&page=1&onlyReference=false
来源:牛客网

不同类型的城市的人口量级、人员组成、人员背景各不相同,因此需要按照以下步骤进行估算:
1. 定义城市类别(小城市、大城市)
2. 明确人口组成
3. 明确人口需求
4. 估算
这里,我们假设待计算城市为北京市
1. 北京市是一个活跃的大城市,设北京内平均日人口为 2400w人
2. 假设不同年龄段的人口大体相似,假设人口年龄区间为0-5岁,6-10岁,。。。55-60岁,共12段,每段200w人
3. 0-10岁的小朋友几乎不能骑单车;56-60岁的老人不便骑车;11-15岁的人口主要为中小学生,由于北京的基础交通十分发达,且许多人家有私家车,设其中10%有骑车上下学的需求,且有需求的同学中70%的同学有自己的自行车;16-25岁的人口主要由大学生和初入职场的学生组成,其往往没有私家车,因此设其中30%有骑车上下学/班的需求,且有需求的人中70%的人有其他代步工具(如电动车);26-45岁的基本为相对成熟的职场人士组成,其骑车出行需求量降低,设其中15%有骑车上下班的需求,且有需求的人中70%的人有其他代步工具;46-55岁的人口为了安全,临时出行更少选择骑车,设其中5%的人有骑车的需求,且有需求的人中有50%有其他代步工具(岁数较大的人往往就近出行或乘车出行,有长期自用出行工具的可能性不大)
4. 计算:0*400+0*200+0.1*200*0.3+0.3*400*0.3+0.15*800*0.3+0.05*400*0.5=88w
因为不可能每天都以最高运载量出行,假设日运载为最高运载的60%,则投放量为88*0.6=52.8w
根据前述需求,上下学/班每天至少2次,但也存在一定量超过2次/日的事件,因此粗估平均每人日骑车次为2.5次,则每日交易数量为52.8*2.5=132w
 
3.估算一个城市的出租车数量
作者:徐蒋帅
链接:https://www.zhihu.com/question/20212434/answer/240281295
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

这种sizing问题可以说是经典的案例面试题目了。我在上海,就用上海的数字来测算好了。

鉴于生活常识,出租车是供小于求(不然也不会有滴滴出行了),所以这次测算从供给端出发。

思路如下:

上海市人口*开出租车适龄%*有驾照%*在私企工作比例%*在出租车公司上班比例%*在出租车公司做司机%*(平均每个司机有多少辆出租车)

其中,在出租车公司上班比例又拆成男性和女性:在出租车公司上班比例=(男性%*在出租车公司上班概率%)+(女性%*在出租车公司上班概率%)

接下来进入拍数环节:

上海市人口=25 million

人均寿命约80岁 适龄开出租车的在20-60岁,即50%

有驾照%=40%

在私企工作比例%=60%

男性:女性=50%:50%

男性在出租车工作的可能性:3% 女性在出租车工作的可能性:1%

在出租车公司做司机%=80%

每个司机有2/3辆车(有些出租车公司会是两班倒的形式来最大化出租车的使用率)

算出来的结果是32000辆。

最后查了下上海的出租车数量,是4万辆。

 

另外根据其他已经贴上来的答案,从用车时间着手也可以。

上海市人口*乘车年龄%*收入%*出租车活跃范围%*(1-有私人轿车不需要考虑alternative的%)*每周乘坐出租车的时间*1/(每辆出租车每周运营时间*平均每次乘车乘客数量)=2016年出租车数量。

拍数:

乘车年龄(15-65):60%

收入:80%

出租车活跃范围:80%

有私人轿车不需要考虑alternative的%:30%

每周乘坐出租车时间:1小时

每辆出租车每周运营时间:16小时/车*7天/周=112小时

平均每次乘车乘客数量:1.5人/次

最后算出来的结果是4万辆。

其实还可以做一个sanity check:上海每个区大概有多少量车?

40K/18约等于2222辆/区,reasonable.

转载于:https://www.cnblogs.com/tay007/p/11612504.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

逻辑思维训练题 的相关文章

  • vue router在同界面使用 this.$router跳转路由,mounted不再调用

    1 在vue中 刷新数据常用的办法是 this r o u t e r g o 0 或 者 t h i s router go 0 或者this router go 0 或者this router push path 在最近一次的使用时 发
  • 第三章 总线

    一 系统总线概念 系统总线是计算机内部各个组件之间传输数据和控制信息的通信线路 连接中央处理器 内存 输入输出设备 扩展插槽等各个组件 是计算机系统中最重要的硬件组成部分之一 具有数据传输 控制信号传输和总线协议等功能 系统总线的性能对计算
  • 登录即代表您同意 用户服务协议

    UILabel remindLabel if remindLabel remindLabel UILabel alloc init NSDictionary attributes NSFontAttributeName UIFont sys
  • 一文搞懂Mybatis原理

    文章目录 一 快速入门 二 查询流程分析 2 1首先通过ClassLoader读取配置文件生成输入流 2 2建造者模式加载配置创建SQLSessionFactory 2 2 1SQLSessionFactoryBuilder builder

随机推荐

  • 排序算法(2) 快速排序——快排原理以及快排函数qsort

    上次我们分享了一个基本排序方法 冒泡排序的使用 今天我们来分享第二种排序方法 快速排序 快速排序 我们简称快排 我们先来回顾一下上次的冒泡排序 冒泡排序就是在一个序列里 两两比较并根据大小关系进行换位处理 经过多次从头到尾的比较 从而实现整
  • 百面A/B测试

    1 在对模型进行过充分的离线评估之后 为什么还要进行在线A B测试 1 离线评估无法完全消除模型过拟合的影响 因此 得出的离线评估结果无法完全替代线上评估结果 2 离线评估无法完全还原线上的工程环境 一般来讲 离线评估往往不考虑线上环境的延
  • 华为OD机试真题- 日志首次上报最多积分【2023Q1】

    题目描述 日志采集是运维系统的的核心组件 日志是按行生成 每行记做一条 由采集系统分批上报 如果上报太频繁 会对服务端造成压力 如果上报太晚 会降低用户的体验 如果一次上报的条数太多 会导致超时失败 为此 项目组设计了如下的上报策略 1 每
  • 三种出包命令npm, yarn, webpack的对比

    在出包的时候 总是会在不同项目里看到不同的出包命令 但留心观察了一下 最常被使用的就是下面这三个 npm run XXX yarn run XXX webpack entry file destination for bundled fil
  • C++---之waitKey()函数

    waitKey 函数详解 1 waitKey 这个函数是在一个给定的时间内 单位ms 等待用户按键触发 如果用户没有按下 键 则接续等待 循环 2 如下所示 while 1 if waitKey 100 27 break 在这个程序中 我们
  • eclipse maven 导出项目依赖的jar包

    本文转自至 http blog csdn net andyliulin article details 46544555 一 导出到默认目录 targed dependency 从Maven项目中导出项目依赖的jar包 进入工程pom xm
  • Qt在windows和linux下使用默认浏览器打开设置的链接

    QString webstr http www baidu com 设置要打开的网页 bool openService QDesktopServices openUrl QUrl webstr 使用默认浏览器打开 if openServic
  • Testflight 添加外部测试人员

    内部测试人员 不需要提供所有的metadata 外部测试人员 为了使得外部人员可以测试app的预发布build 必须提供如下的metadata What to test App description Feedback email Mark
  • 利用Python读取MongoDB的数据

    近日在处理数据的时候遇到一个问题 数据存储在MongoDB数据库 如图1 而MongoDB模式自由 具有很大的灵活性 可以把不同结构的文档存储在同一个数据库里 即表的字段不是完全固定的 当某个字段有值时就会显示该字段 而当该字段没有值时就不
  • 3.git 将本地仓库推到远程

    1 创建一个本地仓库 git init 2 把文件添加到版本仓库中 git add 3 生成提交记录 git commit m git init 4 关联到远程库 git remote add origin 你的远程库 5 获取远程库与本地
  • jsoncpp封装和解析字符串、数字、布尔值和数组

    使用jsoncpp进行字符串 数字 布尔值和数组的封装与解析 1 下载jsoncpp的代码库 百度网盘地址 http pan baidu com s 1ntqQhIT 2 解压缩文件 jsoncpp rar unzip jsoncpp ra
  • 解决BeanNotOfRequiredTypeException办法(@Autowired和@Resource注解的不同)

    1 错误信息 org springframework beans factory BeanNotOfRequiredTypeException Bean named aisleService must be of type com gdie
  • Nmap源码分析(主机发现)

    Nmap源码分析 主机发现 2012年8月9日 Nmap在进行真正的端口扫描之前 通常需要确定目标主机是否在线 主机发现过程 以免发送大量探测包到不在线的主机 主机发现作为Nmap的基本功能之一 用户也可以单独运用 例如 仅仅需要确定局域网
  • 盘点3款超好用的免费录屏软件,快来看!

    在现代数字化社会中 录屏软件成为了各行各业中必备的工具之一 用于记录操作步骤 制作教程 分享游戏精彩瞬间等 而寻找一款免费的 功能强大的录屏软件也变得越来越重要 本文将为您介绍3款免费录屏软件 并详细说明使用步骤 帮助您找到适合自己需求的录
  • 制作OLED图标

    制作OLED图标 陈拓 2021 06 24 2021 06 26 1 概述 制作用于OLED显示的图标 获取C语言图像点阵数据 2 图标库 先准备图标图像 可以从图标库中找需要的图案 下面两个是我常用的图标网站 2 1 Font Awes
  • 什么是gdb,gdb的简单用法

    在Linux中 gdb是GNU调试器 GNU debugger 的缩写 它是一个强大的命令行调试工具 用于调试C C 和其他编程语言的程序 使用gdb可以执行以下任务 启动程序并逐行执行代码 设置断点 以便在特定位置停止程序执行 检查变量的
  • php漏洞eval,Web安全之代码执行漏洞

    原标题 Web安全之代码执行漏洞 内容 1 代码执行漏洞的概述 2 代码执行漏洞的危害 3 代码执行漏洞的利用 4 代码执行漏洞的防御 背景介绍 在Web应用中有时候程序员为了考虑灵活性 简洁性 会在代码调用eval函数 PHP函数 去处理
  • oracle imp lrm 00101,LRM-00101: unknown parameter name解决办法

    LRM 00101 unknown parameter name解决方法 点击右边红色标题查看本文完整版 LRM 00101 unknown parameter name解决方法 SQL gt startup pfile d oracle
  • 2023华为od机试 Python【比赛冠军】

    题目 我们现在有若干个运动员 每个运动员有自己独特的id 每个运动员的能力不同 比赛按照如下规则进行 0号和1号 2号和3号 以此类推 在每一轮比赛中 获胜的进入下轮 输入描述 输入一行N个数字代表N的运动员的实力值 输出冠亚季军的id 用
  • 逻辑思维训练题

    1 估算你所在城市理发店的数量 https www jianshu com p 1431daad2c62 这种思维方式的核心 就是把你要探索的结果用一个数理公式展示出来 我们用最开始的煎饼摊例子来看怎么算 就要用到 利润 收入 变动成本 而