CPT挂靠抽中H1B后被RFE

一亩三分地论坛

 找回密码
 Sign Up 注册获取更多干货
有你有策略
微策略(MicroStrategy)
2019校园招聘火热进行中
E轮2.5亿美元融资
K12教育独角兽一起作业诚聘
机器学习/数据统计/教育等职位
码农求职神器Triplebyte:
不用海投
内推多家公司面试
高效直聘+内推,70%面试率
AI帮你免费完善简历
直击全美十万个科技职位
坐标湾区
DreamCraft创始团队
招聘游戏开发工程师
游戏初创公司招聘工程师、UIUX Designer和游戏策划
把贵司招聘信息放这里
查看: 984|回复: 30
收起左侧

狗家电面

[复制链接] |试试Instant~
我的人缘0
宇宙小清新 发表于 2018-11-10 08:27:58 | 显示全部楼层 |阅读模式
该内容以做模糊处理,您需要登录后才可查看. 登录 | Sign Up 注册获取更多干货
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  81% (9)
 
 
18% (2)  踩

2018(10-12月) 码农类General 硕士 全职@Google - 内推 - 技术电面  | Pass | fresh grad应届毕业生

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

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

x
面试官迟到了15分钟orz...不废话,直接做题,只有一道题
游客,本帖隐藏的内容需要积分高于 120 才可浏览,您当前积分为 0。
查看如何攒积分 Click here for more info.




补充内容 (2018-11-10 15:35):
数组没有排序

评分

参与人数 5大米 +11 收起 理由
tai扯了 + 1 赞一个
xn1990114 + 5 给你点个赞!
lzhong + 3 楼主好运
wzy602867832 + 1 赞一个
xijie + 1 赞一个

查看全部评分


上一篇:高盛 七号superday 求点大米
下一篇:Houzz面经

本帖被以下淘专辑推荐:

我的人缘0
yexiaojiaycc 发表于 2018-11-10 16:25:05 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  96% (86)
 
 
3% (3)  踩
frankchang0311 发表于 2018-11-10 14:16
不知道这样对吗,O(n)
[mw_shl_code=java,true]    public static long findK(int[] salary, int budget)  ...

这个666字数字数

补充内容 (2018-11-10 16:41):
要考虑一下这种情况:[100, 200, 300, 400], budget = 40。
回复

使用道具 举报

我的人缘0
frankchang0311 发表于 2018-11-10 14:16:54 | 显示全部楼层
本楼: 【顶】   100% (1)
 
 
0% (0)   【踩】
全局: 顶  100% (1)
 
 
0% (0)  踩
不知道这样对吗,O(n)
[Java] 纯文本查看 复制代码
    public static long findK(int[] salary, int budget) {
        int n = salary.length;
        int sum = 0;
        Arrays.sort(salary);
        int[] sums = new int[salary.length];
        for (int i = 1; i < n; i++) {
            sum += salary[i - 1];

            int rest = budget - sum;
            long expect = rest / (n - i);
            if (salary[i] > expect) {
                return expect;
            }
        }

        return 0;
    }


补充内容 (2018-11-10 14:34):
如果工资没排序的话 就O(nlogn)
回复

使用道具 举报

我的人缘0
foryousee 发表于 2018-11-10 11:17:43 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  92% (58)
 
 
7% (5)  踩
应该是binary search就可以了吧,上限是最大值,下限是budge / 人数
回复

使用道具 举报

我的人缘0
 楼主| 宇宙小清新 发表于 2018-11-10 11:36:47 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  81% (9)
 
 
18% (2)  踩
foryousee 发表于 2018-11-10 11:17
应该是binary search就可以了吧,上限是最大值,下限是budge / 人数

是的是的
回复

使用道具 举报

我的人缘0
郁小南 发表于 2018-11-10 11:43:02 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  92% (39)
 
 
7% (3)  踩
解法:排序 O(nlogn) 或者用Stack O(n),不知是否有更好的解法

补充内容 (2018-11-10 11:43):
看到Binary Search看来我还是太年轻了(。

补充内容 (2018-11-10 11:44):
啊 员工的工资是已经排序的话那确实Binary Search……但是不排序的话可能还是O(n)
回复

使用道具 举报

我的人缘0
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  92% (26)
 
 
7% (2)  踩
求问楼主 binary search我也不太明白啊 有可能不求和就能算出k么 只找到临界值的话 比budget高了多少可以算出来么 真心求教
回复

使用道具 举报

我的人缘0
foryousee 发表于 2018-11-10 13:40:57 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  92% (58)
 
 
7% (5)  踩
郁小南 发表于 2018-11-10 11:43
解法:排序 O(nlogn) 或者用Stack O(n),不知是否有更好的解法. 1point3acres
-baidu 1point3acres
补充内容 (2018-11-10 11:43):

麻烦问一下stack怎么做?实在想不出来。binary search其实跟排不排序没关系。每一次binary search的cost其实还是n,最后的cost会是O(nlog(max - min))
回复

使用道具 举报

我的人缘0
foryousee 发表于 2018-11-10 13:45:08 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  92% (58)
 
 
7% (5)  踩
[Java] 纯文本查看 复制代码
public int findK(int[] salary, int budget) {
        int lo = budget / salary.length;
        int hi = Integer.MIN_VALUE;
        for(int sa : salary) {
            hi = Math.max(hi, sa);
        }
        while(lo < hi) {
            int mid = (hi - lo) / 2 + lo;
            int cost = 0;
            for(int sa : salary) {
                if(sa <= mid) {
                    cost += sa;
                } else {
                    cost += mid;
                }
            }
            if(cost == budget) {
                return mid;
            } else if(cost < budget) {
                lo = mid + 1;
            } else {
                hi = mid;
            }
        }
        return lo;
    }

这个是code,stack怎么在n之内解出来呢?完全没思路- -
回复

使用道具 举报

我的人缘0
 楼主| 宇宙小清新 发表于 2018-11-10 14:05:20 | 显示全部楼层
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  81% (9)
 
 
18% (2)  踩
tai扯了 发表于 2018-11-10 13:12
求问楼主 binary search我也不太明白啊 有可能不求和就能算出k么 只找到临界值的话 比budget高了多少可以算 ...

binary search解法有位层主给出了代码,就是在解可能的取值范围内用binary search取数然后拿去验证,但对于小数情况只能求到近似值。不知道有没有更好的解法惹,不过求和应该是必须的
回复

使用道具 举报

我的人缘0
本楼: 【顶】   0% (0)
 
 
0% (0)   【踩】
全局: 顶  92% (26)
 
 
7% (2)  踩
foryousee 发表于 2018/11/10 13:45:08
[mw_shl_code=java,true]public int findK(int[] salary, int budget) {
        int lo = budget / salar...

所以这个是未排序的nlogn解法
回复

使用道具 举报

游客
请先登录

本版积分规则

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

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

手机版|小黑屋|联系我们&一亩三分地论坛声明

GMT+8, 2018-11-18 03:39

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

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