专栏名称: 九章算法
专业的北美IT求职经验分享、技术交流社区,帮助你找到好的IT工作。由硅谷顶尖IT企业工程师维护。提供专业的算法培训/面试咨询,官网 www.jiuzhang.com
目录
相关文章推荐
算法与数据结构  ·  OPPO校招面试算法真题解析 ·  3 天前  
算法与数据结构  ·  离谱!裁员裁出新高度了。。 ·  4 天前  
算法与数据结构  ·  美团2023秋招笔试真题解析 ·  4 天前  
九章算法  ·  Snowflake要裁员了吗? ·  6 天前  
九章算法  ·  最新!Dropbox裁员20%!补偿16周…… ·  1 周前  
51好读  ›  专栏  ›  九章算法

Google 面试题 | 二进制手表

九章算法  · 公众号  · 算法  · 2016-12-09 07:55

正文

题目描述


给我们一块表,这个表显示的时间是12小时制,表上显示小时和分钟,且这个表显示的方式是2进制形式(小时4位,分钟6位表示),告诉我们某一时刻表上显示“1”的个数,问我们当前可能的时间有哪些?


样例

Example:

Input: n = 1 

Return: ["1:00", "2:00", "4:00", "8:00", "0:01", "0:02",

"0:04", "0:08", "0:16", "0:32"]


解题思路


对于这道题目,首先思考,12小时制的表格,小时是从0~11,分钟是从0~59,这么小的数据我们完全可以预处理出每一种情况下小时或者分钟包含“1”的个数,然后我们分拆num为两块小时和分钟,再枚举下小时和分钟分别占了几个“1”,得到所有的情况。



参考代码


http://www.jiuzhang.com/solutions/binary-watch/



面试官角度分析


能够迅速分析出小数据,能够暴力预处理所有情况,那么本题就可以达到hire程度。


相关LC练习题


http://www.lintcode.com/zh-cn/problem/next-smaller-and-larger-number-with-the-same-1-bits/


想进FLAG实习?九章帮你系统讲解面试算法,解决面试时常见算法问题


以下课程,正在报名中!

《九章算法班》

《算法强化班》

《Java入门与基础算法班》

《Big Data 项目实战班》

第一节免费试听!!

报名网址http://t.cn/RAC7Era, 或猛戳“阅读原文”

推荐文章
算法与数据结构  ·  OPPO校招面试算法真题解析
3 天前
算法与数据结构  ·  离谱!裁员裁出新高度了。。
4 天前
算法与数据结构  ·  美团2023秋招笔试真题解析
4 天前
九章算法  ·  Snowflake要裁员了吗?
6 天前
九章算法  ·  最新!Dropbox裁员20%!补偿16周……
1 周前
译言  ·  沉沦|阴错阳差的缘分
8 年前
客家圈  ·  赣州这是怎么了!!!!
7 年前
运势君  ·  【日运】最塔罗2017.1.20星座运势
7 年前
高校人才网  ·  高校师资力量 海归已是主力
7 年前