你能搞定这两道谷歌面试题么?
共 4742字,需浏览 10分钟
·
2020-08-10 18:48
谷歌几乎是每一个学计算机的人都向往的公司。小编在这里为大家带来两道电话面试的题目~
![](https://filescdn.proginn.com/c6546bc8a0148c41c257a152abc9d9a4/90954e449d8d29f92cf814a56b6d1da6.webp)
谷歌的面试一般有5-7轮。
首先是一轮的电话面试,google docs在线写题。如果电话面试通过的话会被邀请参加现场面试。现场面试大概有五轮:一轮英文面试,俗称behavior interview;一轮午餐面试;还有三轮技术面试,每一轮45分钟,做两个题。
下面这两道题是小编校招的时候被问到的两道题,需要在45分钟内在白版上解出来,并且能够做到bug free。
第一题
题目描述:
有一个音乐播放器,这个播放器有两种播放模式,一种random,每次随机播放一首歌;另一种是shuffle模式,每次将所有歌做全排列之后按顺序播放,一轮播放完之后再重新打散继续播放。比如歌单里有3首歌:《稻香》、《一荤一素》和《像我这样的人》,random的播放顺序可能是《稻香》、《一荤一素》、《稻香》、《稻香》、《像我这样的人》、《稻香》;而shuffle的播放顺序为《稻香》、《像我这样的人》、《一荤一素》、《像我这样的人》、《稻香》、《一荤一素》。
现在给你一个你听到的歌的列表,问你现在这个音乐播放器是哪种模式?
输入:
第一行一个整数n,表示你听到的歌曲的数目。
第二行是n个整数,每个整数表示你听到的歌的名字。同样的数字表示同一首歌。
输出:
输出1,表示播放器当前处于shuffle状态;
输出2,表示播放器当前处于random状态;
输出3,表示不确定播放器处于shuffle还是random状态。
样例输入
5
1 1 2 3 2
样例输出
2
样例输入
10
1 3 2 2 3 1 3 1 2 2
样例输出
3
第二题
题目描述:
一个二维平面上有独立的n个城市,每个城市之间的距离为他们之间的直线距离。一个公司负责将这n个城市之间的交通打通,使得任意两个城市之间都能相互到达。公司可以选择在两个城市之间修路,修路的成本是路的长度;公司也可以选择修建飞机场,有飞机场的两个城市是可以互相到达的,修建一座飞机场的固定成本是A万。问你现在如果要把这n个城市的交通都打通,最小的成本是多少?
输入:
第一行两个整数n、A,表示有n个城市,以及修建一个机场的成本是A万元。
接下来有n行,每行两个整数x y,表示这个城市的坐标是(x,y)。
输出:
输出最小成本
样例输入
4 2
1 2
1 3
1 4
1 5
样例输出
3
# 在相邻的两个点之间修路即可,所需要的成本为1*3=3万元。
![](https://filescdn.proginn.com/84618edabcf1e657558f6f085a921ce2/afb5c2d02699406920d9f1b34c17dbaa.webp)
好了,看完这两个题,你有思路了么?是不是感觉谷歌的面试题也没那么难呢,欢迎大家在下方留言讨论~
号外1:
如果您有面试的经历和心得(主要是互联网相关)想要跟大家分享,欢迎后台联系小编~一经录用,会有报酬哦。
号外2:
后台私信小编,可拉您进“面鲸”专属用户群,小编和他的朋友们会不定期在群里分享更多干货,当然你也可以在群里认识其他很多更优秀的小伙伴~
![](https://filescdn.proginn.com/972f12fc247240d13d9e1ad75d1b3558/8851425ec1cfc402ff63fbd24b4b8638.webp)
![](https://filescdn.proginn.com/6b37173701e45ecc01ee6f6335169c7d/957148ade86368a6696b694a629789d3.webp)
玩转 Windows Terminal
![](https://filescdn.proginn.com/b21840de665c1630efa428fcec82e149/5b39181e7d6387bee4a670b210516b7e.webp)
async、await是如何简化了C#中多线程的开发过程
![](https://filescdn.proginn.com/1a8c610989a93e27c08555e472625413/e480f83380dfbe968e985b862076916f.webp)
卧槽,又来一个神器,微信消息防撤回!