[八我司] 介绍一下Uber tech stack和各个大组的情况

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
E轮2.5亿美元融资
K12教育独角兽一起作业
北京-诚聘人工智能/教育/大数据岗
坐标湾区
Games Startup
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
码农求职神器Triplebyte:
不用海投
内推多家公司面试
把贵司招聘信息放这里
查看: 2281|回复: 5
收起左侧

DropBox OA

[复制链接] |试试Instant~ |关注本帖
theanois 发表于 2016-10-26 04:13:39 | 显示全部楼层 |阅读模式

2017(10-12月) 码农类General 博士 实习@Dropbox - 内推 - 其他  | Pass | 其他

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

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

x
马上要Dropbox的一面了,发个GridIllumination  OA的code攒攒人品。缩进都乱套了,不过好在是java,大家自己动下手吧。写完代码太着急了,也没看过了多少test case。不过因为拿到面试了,估计还行吧。求各位给点大米
  1. import java.util.ArrayList;
  2. import java.util.HashMap;
  3. import java.util.HashSet;

  4. public class GridIllumination {

  5.         public GridIllumination()
  6.         {
  7.                
  8.         }
  9.        
  10.         static class Point {
  11.         public int x;
  12.         public int y;
  13.         
  14.         public Point(int x, int y)
  15.         {
  16.             this.x = x;
  17.             this.y = y;
  18.         }
  19.         
  20.         public boolean equals(Object o)
  21.         {
  22.                 Point point = (Point)o;
  23.                 .本文原创自1point3acres论坛
  24.                 if(this.x==point.x&&this.y==point.y)
  25.                         return true;
  26.                 . 围观我们@1point 3 acres
  27.                 return false;
  28.         }. Waral 博客有更多文章,
  29.         . 围观我们@1point 3 acres
  30.         public int hashCode()
  31.         {
  32.                 return this.x+this.y;
  33.         }. more info on 1point3acres
  34.         }
  35.        

  36.         public ArrayList<String> checkIllumination(int N, ArrayList<Integer[]>lamps, ArrayList<Integer[]> queries)
  37.         {
  38.                 HashMap<Long, Integer> rows = new HashMap<Long, Integer>();
  39.                 HashMap<Long, Integer> cols = new HashMap<Long, Integer>();
  40.                 HashMap<Long, Integer> diags = new HashMap<Long, Integer>();
  41.                 HashMap<Long, Integer> otherDiags = new HashMap<Long, Integer>();
  42.                 HashSet<Point> lampSet = new HashSet<Point>();
  43.                
  44.                 ArrayList<String> ans = new ArrayList<String>();
  45.                
  46.                 for(int i = 0;i<lamps.size();++i)
  47.                 {
  48.                         Integer[] lamp = lamps.get(i);. from: 1point3acres
  49.                         long row = lamp[0];
  50.                         long column = lamp[1];
  51.                        
  52.                         Point point = new Point(lamp[0], lamp[1]);.本文原创自1point3acres论坛
  53.                         lampSet.add(point);
  54.                         . 留学申请论坛-一亩三分地
  55.                         if(!rows.containsKey(row))
  56.                         {
  57.                                 rows.put(row, 1);
  58.                         }
  59.                         else {.1point3acres网
  60.                                 rows.put(row, rows.get(row)+1);. 牛人云集,一亩三分地
  61.                         }. 一亩-三分-地,独家发布
  62.                         . 1point 3acres 论坛
  63.                         if(!cols.containsKey(column))
  64.                         {
  65.                                 cols.put(column, 1);. 一亩-三分-地,独家发布
  66.                         }
  67.                         else {. visit 1point3acres for more.
  68.                                 cols.put(column, cols.get(column)+1);
  69.                         }
  70.                        
  71.                         if(!diags.containsKey(row+column))
  72.                         {
  73.                                 diags.put(row+column, 1);
  74.                         }
  75.                         else {
  76.                                 diags.put(row+column, diags.get(row+column)+1);
  77.                         }
  78.                        
  79.                         if(!otherDiags.containsKey(row-column))
  80.                         {
  81.                                 otherDiags.put(row-column, 1);
  82.                         }
  83.                         else {.本文原创自1point3acres论坛
  84.                                 otherDiags.put(row-column, otherDiags.get(row-column)+1);
  85.                         }
  86.                 }
  87.                
  88.                
  89.                 for(int i = 0;i<queries.size();++i)
  90.                 {
    . from: 1point3acres
  91.                         Integer[] query = queries.get(i);. Waral 博客有更多文章,
  92.                         int x = query[0];
  93.                         int y = query[1];. Waral 博客有更多文章,
  94.                         // turn light off
  95.                         for(long j = x-1;j<=x+1;++j)
  96.                         {
  97.                                 for(long k = y-1;k<=y+1;++k). more info on 1point3acres
  98.                                 {
  99.                                         if(j>0&&j<=N&&k>0&&k<=N) // valid position
  100.                                         {
  101.                                                 if(lampSet.contains(new Point((int)j,(int)k)))
  102.                                                 {
  103.                                                         rows.put(j, rows.get(j)-1);
  104.                                                         cols.put(k, cols.get(k)-1);
  105.                                                         diags.put(j+k, diags.get(j+k)-1);
  106.                                                         otherDiags.put(j-k, otherDiags.get(j-k)-1);. visit 1point3acres for more.
  107.                                                 } 来源一亩.三分地论坛.
  108.                                         }
  109.                                 }
  110.                         }. 1point3acres
  111.                        
  112.                         boolean dark= this.isDark(x, rows)&&this.isDark(y, cols)&&this.isDark(x+y, diags)&&this.isDark(x-y, otherDiags);
  113.                        
  114.                         if(dark)
  115.                                 ans.add("DARK");
  116.                         else
  117.                                 ans.add("LIGHT");.1point3acres网
  118.                        
  119.                         . 1point 3acres 论坛
  120.                         // turn light on
  121.                         for(long j = x-1;j<=x+1;++j)
  122.                         {
  123.                                 for(long k = y-1;k<=y+1;++k). Waral 博客有更多文章,
  124.                                 {. 留学申请论坛-一亩三分地
  125.                                         if(j>0&&j<=N&&k>0&&k<=N) // valid position
  126.                                         {
  127.                                                 if(lampSet.contains(new Point((int)j,(int)k))). 牛人云集,一亩三分地
  128.                                                 {
  129.                                                         rows.put(j, rows.get(j)+1);
  130.                                                         cols.put(k, cols.get(k)+1);
  131.                                                         diags.put(j+k, diags.get(j+k)+1);
  132.                                                         otherDiags.put(j-k, otherDiags.get(j-k)+1);
  133.                                                 }
  134.                                         }
  135.                                 }
  136.                         }
  137.                 }. 留学申请论坛-一亩三分地
  138.                
  139.                 return ans;
  140.         }
  141.        
  142.         . 1point 3acres 论坛
  143.         public boolean isDark(long key, HashMap<Long, Integer> map). 1point 3acres 论坛
  144.         {
    . 1point 3acres 论坛
  145.                 // test if there is light on this row, column, diagnals-google 1point3acres
  146.                 if(map.containsKey(key))
  147.                 {
  148.                         int value = map.get(key);
  149.                         // test if the there is still some light on
  150.                         if(value>0)
  151.                                 return false;
  152.                 }
  153.                
  154.                 return true;
  155.         }
  156.        
  157.        
  158.         public static void main(String[] args) {
  159.                 GridIllumination illumination = new GridIllumination();
  160.                

  161.                 // test case 1
  162.                 int N = 8;
  163.                 ArrayList<Integer[]> lamps = new ArrayList<Integer[]>();
  164.                 lamps.add(new Integer[]{1,6});
  165.                 lamps.add(new Integer[]{5,6});
  166.                 lamps.add(new Integer[]{7,3});
  167.                 lamps.add(new Integer[]{3,2});
  168.        
  169.                 ArrayList<Integer[]> queries = new ArrayList<Integer[]>();. visit 1point3acres for more.
  170.                 queries.add(new Integer[]{4,4});. 1point 3acres 论坛
  171.                 queries.add(new Integer[]{6,6});
  172.                 queries.add(new Integer[]{8,1});
  173.                 queries.add(new Integer[]{3,2});
  174.                 queries.add(new Integer[]{2,3});
  175.                
  176.                
  177.                 ArrayList<String> answer = illumination.checkIllumination(N, lamps, queries);
  178.                
  179.                 for(int i = 0;i<answer.size();++i)
  180.                         System.out.println(answer.get(i));. 围观我们@1point 3 acres
  181.         }

  182. }
复制代码

评分

3

查看全部评分

本帖被以下淘专辑推荐:

  • · 面经|主题: 22, 订阅: 0
gavin5566 发表于 2016-10-26 04:19:01 | 显示全部楼层
lz 內推 還 網申? 謝謝
回复 支持 反对

使用道具 举报

 楼主| theanois 发表于 2016-10-26 04:21:02 | 显示全部楼层
gavin5566 发表于 2016-10-26 04:19
lz 內推 還 網申? 謝謝
-google 1point3acres
是找的同学帮忙内推的
回复 支持 反对

使用道具 举报

gavin5566 发表于 2016-10-26 05:33:22 | 显示全部楼层
theanois 发表于 2016-10-26 04:21
是找的同学帮忙内推的

能幫忙內推嗎 感謝!
回复 支持 反对

使用道具 举报

 楼主| theanois 发表于 2016-10-26 05:37:13 | 显示全部楼层
gavin5566 发表于 2016-10-26 05:33. 1point 3acres 论坛
能幫忙內推嗎 感謝!

同学也是找的他的认识的人,关系有点远,不好意思。
回复 支持 反对

使用道具 举报

gavin5566 发表于 2016-10-26 09:42:23 | 显示全部楼层
theanois 发表于 2016-10-26 05:37
同学也是找的他的认识的人,关系有点远,不好意思。

沒事的 謝謝lz
回复 支持 反对

使用道具 举报

本版积分规则

提醒:发帖可以选择内容隐藏,部分板块支持匿名发帖。请认真读完以下全部说明:

■隐藏内容方法: [hide=200]你想要隐藏的内容比如面经[/hide]
■意思是:用户积分低于200则看不到被隐藏的内容
■可以自行设置积分值,不建议太高(200以上太多人看不到),也不建议太低(那就没必要隐藏了)
■建议只隐藏关键内容,比如具体的面试题目、涉及隐私的信息,大部分内容没必要隐藏。
■微信/QQ/电子邮件等,为防止将来被骚扰甚至人肉,以论坛私信方式发给对方最安全。
■匿名发帖的板块和方法:http://www.1point3acres.com/bbs/thread-405991-1-1.html

关闭

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

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

custom counter

GMT+8, 2018-5-25 07:59

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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