Categories

Archive

问一道suqare店面题

0

原帖地址:mitbbs 一个 2 *4 的数组不重复包含1-8这些整数,有3种操作: a) 上下两个row交换 b) 所有元素向右shift一个位置 c) 中间4个元素,顺时针旋转90度 现在随便给一个这样的数组,最小恢复到 [[1234], [5678]] 要几步

Categories
Tags

square 电面一面

0

原帖地址:一亩三分地 EST 3点刚结束的,本来原定skype面试,但是Skype杂音极其严重,改打电话了。在coderPad.io做题,偶尔也用skype的message交流一下。 上题目:类似leetcode上word search II,但是简化了一些。输入有一个vector作为字典,至于另一个输入原题输入是一个vector来找单词,这里是一个string作为单词pattern来match。输出是可能match到的所有单词。pattern只有小写字母a-z,还有一个『*』可以match任何一个且仅一个字母。 在开始写之前,先让我针对『*』的情况来对trie做优化,因为这个情境里n个『*』就有26^n的复杂度。我就说给trie的每个child*都设立一个对应的vector表示这个child下面可能会有长度为多少的单词来match。这样遇到20个『*』的情况,这个child*没有对应20长度的单词,这个child*就跳过了。 幸亏昨晚做了一遍word search II!基本上按照word search II的套路就会做出来,先建trie,然后我recursive的方式给pattern里面的char挨个去match。 一开始我想iterative的方法去match,但是觉得对『*』处理起来比较麻烦,iterative一半改了recursive,导致一部分代码没适应改过来。。出了segment fault。。不过面试官对写的代码和思路还是认可的,看时间块到了,最后和我分析了一下代码bug可能地方,说应该只是一个很小的地方,只是时间不够来不及改了,然后让我问问题了。随便问了些他对square的喜爱程度,然后我在过程中口头膜拜了他的工作,然后就结束了。 退出前复制了所有代码,然后在xcode跑一遍马上意识到了问题,面试结束5分钟后通过skype给他留言了我改的能通过的代码,不知道会不会有加分~ 虽然有个fault,但是貌似这个面试官挺满意的。。希望能有下一轮电面。。 这是我为数不多的面试,希望能撑到onsite~

Categories
Tags

square 电面

0

原帖地址:一亩三分地 上周一周三的两次电面:1面:用的online doc有点问题。代码是我在本地visual studio写好,一部分一部分copy上去的。题目很简单string match。 pattern中有star,每个star能且只能匹配一个字母。给定一个字典,找出所有match的words. 比如给定字典{”ABC“,”ACD“, “AE”, “ATC”} pattern是”A*C”,那么返回“ABC” 和“ATC”,分析了trie和brute force的效率。用trie解决,需要编译通过。面试官白人,比较友好,中间有很多次因为前面所说online doc的问题,一些小的地方的改动都是他帮我完成的。 周一当天给了二面,我不想拖到过节后就定了周三上午的二面。周三早上面试官没有打过来, 后来改了几次改到下午了1点。题目很直白,implement functions 大树加法和乘法,只考虑输入都是正数的情况。可能是我写的比较快,后面又要我implement function 减法。这几个function都要编译测试。这轮结束的比较早,大家都赶着过节呢。第二天也就是周四收到onsite邀请。没想到这天hr还上班?

Categories
Tags

Square phone

0

原帖地址:一亩三分地 整个过程是两轮电面和两轮onsite, 非常之快,而且四轮的难度也比较相似,没有任何白板coding和system design, 全是pair programming。 总体来说都不是很难, 但是需要当下运行通过一些简单的test case. 我的建议是尽量很快给出一个workable Solution, 因为往往test case都不太大,efficiency 的重要性要略小于correctness, 这点也和别的公司不太一样。 通常面试官都有很多followup 或者feature需要你加,所以先运行一个workable Solution很重要, 不然还没开始followup就结束了。 phone 1: get a list of conflicting time for meetings, 有点类似leetcode 的meeting rooms, 区别是要列出每个slot里面conflict 的meeting有哪些。我当时想了一个很复杂的方法,最后编不出来。。。后来在面试官的提示下用直接bruteforce 每个slot出来了。。。这里非常感谢面我的第一个小哥。因为我当时觉得我已经挂了,可是他让我过了。。。 phone 2: Ant’s Langton Onsite: Read more ›

Categories
Tags

Square skype面

0

原帖地址:一亩三分地 下午刚面,估计已跪。。。 题目较长, 理解题意花了不少时间, 趁着还记得简短地说一下(交流很重要,有些信息题目里没有明说): 大意是实现一个game simulator: Objective: 收集最多价值的宝藏,在氧气耗尽前返回base. Description: 有一个长度为25的一维地图,base在index0处, 剩下24个index分别放着价值1~24的宝藏. 两个玩家从base为起点同时进行游戏, 每个玩家初始时有一个容量为20的氧气瓶, 玩家有三个状态: 1.目前的位置 2. 朝向 3.背着的宝藏的价值 Rules: 1. 如果oxygen剩余=0. 得分=宝藏价值 3. 氧气消耗量 = 身上宝藏的价值. 4. 每一个时刻玩家都可以选择掉头回家. 5. 玩家每走到一个position会捡起此position对应价值的宝藏 6. 玩家每次的位移 = max(0, rand(2,6)) – 身上宝藏的价值 7. 如果某position的宝藏被拿走了,则下一次经过这个position时, Read more ›

Categories
Tags

square onsite

0

原帖地址:一亩三分地 上周五面的,挂了,发出来攒人品吧。 电面: 1. 给一个数组,找出一个长度最长的子数组,里面的值是连续的。 Follow up: 连续的值可以跳着的,不一定index也是连续,返回这种子序列的最大长度。 2. LRU cache. Onsite: squre的office逼格的确挺高,中午吃的也挺好,面试是pair programming,但每个面试者不是单独一个房间,而是十几对面试者跟面试官同事在一个地方,有点吵。 1. 不停地增加squares,表示成 (float x, float size) , 只要有重叠,新的方块会积在旧方块上, 最后实现 getHight(float x), 这题目是面经里电面题,就没准备。看着简单,写起来巨烦,最后跑是跑出来了,但是感觉还是有bug, 目测跪在了这一题。 2. a. 一堆 pancakes, 根据大小排序,但是要先 implement swap(List pancakes, int end),把从 index 0 ~ Read more ›

Categories
Tags

求职季结束,面经(apple, MS, indeed, square, quantcast …)+match+offer选择

0

原帖地址:一亩三分地 历时3个月的求职季,终于落下序幕了..最后拿到了(按时间顺序)Indeed, Apple, QuantCast, Microsoft, Square的 offer。在拿到apple之后argue pkg的时候,因为期末降至,很愚蠢的cancel了google和snapchat的面试,留下了一点遗憾。作为ee到美国转来cs的**,感觉应该知足了,不过,觉得自己在投简历,match pkg,选择offer的时候有很多失误,所以感觉比较遗憾,写出来希望大家以后可以避免这些教训。 先说一下,大致的准备情况: 背景:在国内某985高校ee毕业后,来美国某学校读了个ms..学校在公立中算不错的,身边同学水平都不错,有一部分科技公司在这里设有分部,且IT巨头一般也回来,所以身边同学基本这学期也都找到工作了. 转专业找到工作的难度其实不是很大,就业形式现在也没有传言的那么糟糕,我觉得只要积极主动的去准备,并不会有什么问题。我自己感觉准备最主要的就是:刷题 + 建立自己的social network(linkedin+学长学姐+career fair)。两者都很重要,前者决定你通过面试的成功率,后者决定你得到的机会多少。成功 = 成功率 * 机会次数。 暑期,因为在北美某著名养老公司实习,周末有充足时间刷题。起初每晚回家也打算刷题(不过自制力太差,后来就演变成了回家打游戏,逃 在暑假结束前,重新开始做了200道题不到(之前找实习的时候做过100道出头)…暑假结束后,出去玩了一趟,回来发现自己的对题目的认识和熟练度,完全没有达到理想的程度,于是利用开学前一周,和开学初2周的时间,把剩余的题目刷完,分章节和一个大神同学整理讨论了一遍,自己又把所有题目全都看了2遍,其中感觉重点的题目又重新写了一遍。大概这个过程结束的时候,career fair就开始了。然后我混乱的求职经历就开始了 求职经历: career fair上,我投简历的策略出现了很大的问题,因为当时实习公司是给了一个口头的return offer(我并没有很积极的去要求尽快确定,因为希望能有更多时间去试一下更好的机会),但因为这样的不确定性,我当时投简历的策略就是大小公司一起投,保证一定有工作,这样最后面试的压力是非常大的,再加上学业的压力,在整个10月中旬-11月中旬,基本每天都在面试或者准备明天的面试,leetcode在这期间一道题都没有看过,是literally的一道都没有..这里就犯了第一个错误:因为定位不是很清晰,对就业形势估计比较糟糕,甚至投了一些非常普通的三流公司(一些local的startup),浪费了很多精力。我觉得,如果对自己背景有一定自信的同学,完全可以有一定的target范围,我身边很多同学就是这样做的,轻松+效果好 后果其实是很严重的,比如uber没有好好准备面试,导致直接挂在一道面经题上,google,snapchat没有时间经历去面试,直接cancel了(hr倒是很好,说以后有机会,随时可以再面,这里留下一个伏笔先)。所以,建议以后再去career fair前,对每个公司做一定的研究,选择一定的公司去投简历。 表刷:fb,linkedin 没有onsite(店面/campus interview被拒):hbk, uber 拿到onsite面试 airwatch, apple, citrix ,indeed, microsoft, quantcast, Read more ›

Categories

我的找工求职总结帖

0

原帖地址:一亩三分地 三个月的求职季告一段落,本来准备做完final project写一发总结帖,今天看到朋友的总结帖,感慨万千,半夜失眠了,爬起来写一发。第一次发帖,格式文风什么的不太注意,大家见谅。 背景: 杭州某高校ee毕业,美国南部某高校ece硕士,算是半路转行吧。研一下上了一学期的算法和c++, 从暑假开始陆续刷题,到十一月底大概leetcode过了一遍多一点点,部分高频题做了好几遍。System design 陆陆续续看过一些,主要是为了准备linkedin。 电面挂掉:cisco onsite挂掉: oracle,square offer: snapchat, indeed, amazon pending: google, linkedin cancel onsite: yahoo 每个人经历了求职季都会有一些自己的总结,我个人得出的一些经验(仅供参考): 1. 合理安排时间,有些公司流程特别慢,就得早点投,比如google,不然被其他公司的deadline催着非常蛋疼。。 2. 多利用linkedin和校友资源,找人内推往往有效很多。 3. 刷题过程中第一遍的收获是最大的,很多方法技巧都是第一次见到,建议第一遍做慢一些,多看看discuss,抽象出问题的模型和本质,这个比较重要,因为之后我碰到的很多面试题也都不是原题,但它们都逃不出常见的算法范围,只要能够看到一点影子,联系之前掌握的算法数据结构,把问题本质提取出来,一般的问题到最后转化一下都不会很难。 4. 找同学一起准备会高效很多。我在准备期间和另外一个小伙伴一起准备和讨论,收获很大。 面经: cisco:campus面试问了longest common prefix, leetcode原题。电面问的比较杂,有数据结构,数据库,网络,resume上的project, 不深但比较广 oracle: onsite按组来,这个没什么好说的。 square: 1面: Read more ›

Categories

两周之前的square onsite

0

原帖地址:一亩三分地 大概一周多以前的吧 2轮上机,2小时,然后就是吃饭 1. 写一个TREE, 然后写TREE ITERATOR,然后写一个特殊的TREE, 类似红黑树要实现BALANCE 2. 1: ((AB()(CD)类似这种的string, return是否valie 2.2 :(({{}gfajfd}[]>

Categories
Tags

Square skype面 新鲜

0

原帖地址:一亩三分地 网上海投简历,作了hackerank的题,做的很不好,test case有没跑过得。一个题是在一个2d array的matrix里,有一棵树,有一些松子,松鼠要把这些松子取回到树那里存储,问用的steps。 另外一题忘了。。。 然后约skype面,一个小时,中间skype出了一些问题。 就一道题,设计一个Prime的class,里面有个方法upTo返回从1到n的所有质数。 然后再写test case。 写完test case就问哪些line of code可以不要,之前看有人说square喜欢code的简洁,宁愿牺牲一些些得effiency,果然如此。面试官说除非真的很影响效率,不然真的是code越少越好。。。 最后让我提问。 攒rp。

Categories
Tags