导读:只有智商前1%的人能独立想出正确答案。
作者:小灰
来源:程序员小灰(ID:chengxuyuanxiaohui)
—————  第二天  —————
完整题目如下:
我们有1000个苹果,要用10个箱子来进行分装,每个箱子所装的苹果数量不限。
但是这里有一个特殊的要求:当我们想要任意数量(从1到1000)苹果的时候,只需要给出几个整箱就行了。
比如,我们想要123个苹果。那么给出第1个、第3个、第5个箱子,里面的苹果数量加起来刚好是123。
如何在这10个箱子里分配苹果,才能满足以上的要求呢?
————————————
(小灰把面试官的问题一五一十地告诉了大黄)
很明显,每个箱子都具有两种状态,“不使用”和“使用”,这就好像是二进制当中的0和1。而前三个箱子的苹果数量分别是1、2、4,这正好对应了二进制前三位的大小:
题目中一共有10个箱子,那我们就可以用这些箱子表示10位二进制数。
用10位二进制可以表示的最大数字是1111111111B,也就是1023。因此,用10个箱子凑出从1到1000数量的苹果,是绰绰有余的。
延伸阅读👇
延伸阅读《程序员必会的40种算法》
干货直达👇
更多精彩👇
在公众号对话框输入以下关键词
查看更多优质内容!
读书 | 书单 | 干货|讲明白|神操作 | 手把手
大数据 | 云计算 | 数据库 | Python | 爬虫 | 可视化
AI | 人工智能 | 机器学习 | 深度学习 | NLP
5G|中台 | 用户画像数学 | 算法 数字孪生
据统计,99%的大咖都关注了这个公众号
👇
继续阅读
阅读原文