《数据科学面试40+真题讲解》,K神本年度最后一次开课


一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
码农求职神器Triplebyte:
不用海投,内推你去多家公司面试
Airbnb 数据科学职位
in analytics and inference
天天打游戏、照样领工资,
你要不要来?
把贵司招聘信息放这里
查看: 1067|回复: 2
收起左侧

16/08 FB 电面

[复制链接] |试试Instant~ |关注本帖
jerryzhang 发表于 2016-9-22 19:43:00 | 显示全部楼层 |阅读模式

2016(1-3月) 码农类 硕士 全职@Facebook - Other - 在线笔试 |Pass其他

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?Sign Up 注册获取更多干货

x
直接上题。
给1个时间区间array,每个item是一个会议的开始和结束时间。计算需要的最少会议室数目。. 鍥磋鎴戜滑@1point 3 acres
思路:
先sort array,然后建立一个heap,把最先结束的会议放在top。heap里面item的最大数目就是需要的会议室数目。需要考虑的1个边界条件是如果多个会议同时结束,需要把heap pop()一下。
C++代码如下:
. more info on 1point3acres.comstruct compare{
    bool operator()(const pair<int, int> lp, const pair<int, int> rp){
          return lp.second < rp.second;
    }. Waral 鍗氬鏈夋洿澶氭枃绔,
};
/*
10a - 10:30a
10a - 11a
11a - 12p
1p - 2p
*/.1point3acres缃

int minMeetingRooms(vector<pair<int, int>> time_intervals){. more info on 1point3acres.com
  priority_queue(pair<int, int>, vector<pair<int,int>>, compare) time_q;
  int ret = 0;
  if(time_intervals.size() == 0) return 0;
  time_q.push(time_intervals[0]);
  for(int i = 1; i < time_intervals.size(); i++){
    pair<int, int> tmp = time_q.top();
    if(time_intervals[i].first >= tmp.second){
        //last room free
        while(time_q.size() > 0){
            tmp = time_q.top();. 鍥磋鎴戜滑@1point 3 acres
            if(time_iternals[i].first < tmp.second)  break;
            else   time_q.pop();-google 1point3acres
        }. 鍥磋鎴戜滑@1point 3 acres
    }
    time_q.push(time_intervals[i]);
    ret = max(ret, time_q.size());
  }
  return ret;.1point3acres缃
}


-google 1point3acres

评分

1

查看全部评分

Pony_s 发表于 2016-9-23 04:58:18 | 显示全部楼层
厉害,这个做法没见过。. Waral 鍗氬鏈夋洿澶氭枃绔,
只知道填格子和用hash。

补充内容 (2016-9-23 04:58):
用hash差不多,不过是空间换时间。
回复 支持 反对

使用道具 举报

 楼主| jerryzhang 发表于 2016-9-23 08:13:17 | 显示全部楼层
放g没找到hash approach.
探讨一下。hash怎么做呀?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明

custom counter

GMT+8, 2017-11-24 01:02

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表