一亩三分地论坛

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

呀嘛熏 社招 OA

[复制链接] |试试Instant~ |关注本帖
primbo 发表于 2016-11-16 01:31:42 | 显示全部楼层 |阅读模式

2016(10-12月) 码农类 硕士 全职@Amazon - 网上海投 - 在线笔试 |Otherfresh grad应届毕业生

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

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

x
内推了亚麻 一直没有回复,上周五海投了一个社招的职位,要求一到三年工作经验,没想到第二天就给回复了。然后直接给了OA。今天搞定了。和之前论坛上发的题目不太一样,不是太难。接下来上题:第一题: 括号match  给一个string 里面是类似(({{[[<<adfadfad>adfasdf>}])>,问是不是match,leetcode easy级别的。
第二题: 类似于 Lowest Common Ancestor of a Binary Tree   但是完全不一样。是说给一个 公司的级别树,最上面是CEO, 然后employee下面有需要向他report的人的话,这个employee 就是manager,每个employee 最多有一个manager。然后给你两个employee 让你找出他们的最低的common manager。employee的数据结构如下:
Employee {
    int id;
    string  name;
   vector<Employee*>  reports;
   vector<Employee*> getReports();
   int getId();
   string getName();. more info on 1point3acres.com
}
Employee* findCommonManager(Employee* ceo,  Employee* employee1, Employee* employee2) {
}
方法就是用DFS分别去找employee1 and employee2. 找的过程中把她们的manager存到stack里面。 然后对stack1 and stack2 的size进行比较。把size大的那个stack先干成一样的。然后调用getId()去比 较
while (stack1.top() -> getId() != stack2.top() -> getId()) {
         stack1.pop();
         stack2.pop();
}
if(!stak1.empty() )
      return  stak1.top();. 1point 3acres 璁哄潧
return nullptr;
. from: 1point3acres.com/bbs

补充内容 (2016-11-17 01:58):
第二天就被拒了。好无情。这是简历得有多差。

评分

2

查看全部评分

llxxyy 发表于 2016-11-17 03:21:41 | 显示全部楼层
楼主抱抱,感觉亚麻确实略坑。小伙伴帮我推给manager,qa岗,结果我收到的和你一样的链接。谢谢楼主分享,加油哦!
回复 支持 反对

使用道具 举报

Owenli20 发表于 2016-11-17 03:59:35 | 显示全部楼层
这道题用LCA那种分治法哪里不对?

  1. Employee* findCommonManager(Employee* ceo,  Employee* employee1, Employee* employee2) {.1point3acres缃
  2.     if (ceo == nullptr) {. visit 1point3acres.com for more.
  3.         return nullptr;
  4.     }
  5.     if (ceo == employee1) {
  6.         return employee1;
  7.     }
  8.     if (ceo == employee2) {
  9.         return employee2;
  10.     }

  11.     bool isManagingEmployee1 = false;
  12.     bool isManagingEmployee2 = false;. visit 1point3acres.com for more.
  13.     for (int i = 0; i < ceo->getReports().size(); i++) {
  14.         Employee* e = findCommonManager(ceo->getReports()[i], employee1, employee2);
  15.         if (e == employee1) {. 鍥磋鎴戜滑@1point 3 acres
  16.             isManagingEmployee1 = true;
  17.         } else if (e == employee2) {
  18.             isManagingEmployee2 = true;
  19.         } else if (e != nullptr) {
  20.             return e;
  21.         }. 鍥磋鎴戜滑@1point 3 acres
  22.     }

  23.     if (isManagingEmployee1 && isManagingEmployee2) {
  24.         return ceo;
  25.     }
  26.     if (isManagingEmployee1) {
    . 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  27.         return employee1;
  28.     }
  29.     if (isManagingEmployee2) {
  30.         return employee2;
  31.     }
  32.     return nullptr;
  33. }.1point3acres缃
复制代码
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

custom counter

GMT+8, 2017-12-11 15:50

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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