回复: 39
跳转到指定楼层
上一主题 下一主题
收起左侧

巨硬OTS面经

全局:

2018(1-3月) 码农类General 硕士 全职@microsoft - 猎头 - 在线笔试  | | Other | 在职跳槽

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

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
3.23 的 hiring event。今天刚收到 OTS,想赶快给做了。

三道题。第一题很简单,找bug。

第二题,利口得 司令二,一个用string代表的数字,要remove n 个,求remove 后得到最小的数字
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
8 01:42):
有朋友问我是不是business application group的。我申请的应该是这个的。我没法发送/回复私信。级别太低 ==

评分

参与人数 6大米 +18 收起 理由
xiaoyucool + 1 给你点个赞!
haha1024 + 3 给你点个赞!
ProveYourself + 5 给你点个赞!
rabbitW + 5 很有用的信息!
fletchliu + 1 很有用的信息!

查看全部评分


上一篇:google电面
下一篇:脸家Rotational Software Engineer昂赛
推荐
taoli0515 2018-3-29 13:12:16 | 只看该作者
全局:
  1. public static int findMinStop(int g, int d, int[][] gasStations) {
  2.         if (g >= d) return 0;
  3.         if (gasStations == null || gasStations.length == 0) return -1;
  4.         for (int i = 0; i < gasStations.length; i++) {
  5.             gasStations[i][0] = d - gasStations[i][0];
  6.         }
  7.         int[] maxReach = new int[gasStations.length + 1];
  8.         maxReach[0] = g;
  9.         Arrays.sort(gasStations, new Comparator<int[]>() {
  10.             @Override
  11.             public int compare(int[] o1, int[] o2) {
  12.                 return o1[0] - o2[0];
  13.             }
  14.         });
  15.         int res = 0;
  16.         HashSet<Integer> visited = new HashSet<>();
  17.         while (res < maxReach.length - 1 && maxReach[res] < d) {
  18.             maxReach[res + 1] = maxReach[res] + findLargestWithOutRepeat(gasStations, visited, maxReach[res]);
  19.             res++;
  20.         }
  21.         System.out.println(visited);
  22.         return maxReach[res] < d ? -1 : res;
  23.     }

  24.     //O(N)
  25.     private static int findLargestWithOutRepeat(int[][] gasStations, Set<Integer> visited, int maxDis) {
  26.         int max = 0;
  27.         int maxIndex = -1;
  28.         for (int i = 0; i < gasStations.length; i++) {
  29.             if (gasStations[i][0] > maxDis) {
  30.                 break;
  31.             }
  32.             if (visited.contains(i)) continue;
  33.             if (gasStations[i][1] > max) {
  34.                 max = gasStations[i][1];
  35.                 maxIndex = i;
  36.             }
  37.         }
  38.         visited.add(maxIndex);
  39.         return max;
  40.     }

  41.     public static void main(String[] args) {
  42.         int[][] test =  {{24,10},{25, 1},{26,12}};
  43.         System.out.println(findMinStop(10, 34, test));
  44.     }
复制代码


草草写了一下 抛砖引玉 希望同学能贡献标答
回复

使用道具 举报

推荐
孤舟 2018-3-11 11:45:46 | 只看该作者
全局:
notturno 发表于 2018-3-7 15:04
greedy可以做

先对加油站按照地点排序。然后在当前的油够到大的加油站中,记录gas的最大值。

这种方法显然有bug,比如必须加当前油能到达的所有站的油才能到达目的地或者接下来的加油站,那么如果只记录所有能达到的加油站中最大的gas, 那么很可能导致达到不了目的地。
回复

使用道具 举报

🔗
PJCS 2018-3-7 08:03:03 | 只看该作者
全局:
请问楼主如何拿到OTS的啊?谢谢
回复

使用道具 举报

🔗
 楼主| fernando 2018-3-7 10:15:41 | 只看该作者
全局:
PJCS 发表于 2018-3-7 08:03
请问楼主如何拿到OTS的啊?谢谢

领英 recruiter 找的我。如果想要,我可以把 recruiter 联系方式发你。如果你是在职的话,比较好。
回复

使用道具 举报

🔗
xdsb1989 2018-3-7 11:34:22 | 只看该作者
全局:
楼主可以分享一下hire event的报名链接吗,多谢!
回复

使用道具 举报

🔗
notturno 2018-3-7 14:09:34 | 只看该作者
全局:
谢谢,感觉是新题,不过难度还好
回复

使用道具 举报

🔗
 楼主| fernando 2018-3-7 14:36:34 | 只看该作者
全局:
xdsb1989 发表于 2018-3-7 11:34
楼主可以分享一下hire event的报名链接吗,多谢!

你留个邮箱 我发你邮箱吧。
回复

使用道具 举报

🔗
 楼主| fernando 2018-3-7 14:50:38 | 只看该作者
全局:
notturno 发表于 2018-3-7 14:09
谢谢,感觉是新题,不过难度还好

好吧。我感觉第三题不是很简单 == 想了挺久。
你有什么好的思路可以分享一下么。
回复

使用道具 举报

🔗
notturno 2018-3-7 15:04:01 | 只看该作者
全局:
fernando 发表于 2018-3-7 14:50
好吧。我感觉第三题不是很简单 == 想了挺久。
你有什么好的思路可以分享一下么。

greedy可以做

先对加油站按照地点排序。然后在当前的油够到大的加油站中,记录gas的最大值。

回复

使用道具 举报

无效楼层,该帖已经被删除
无效楼层,该帖已经被删除
您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

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