20240817的四场笔试


京东:10-12点 100+ 82+ 100

第一题直接两根柱子相减 n =(b-a),n相当于第n个柱子(1+2+3+.....+n),求和(n+1)*n/2-b就是雪的厚度(用long long记录).

第二题直接暴力遍历即可,数据范围1e3, O(n^2)能过。

第三题是一个图上的dp(有环和重边),用记忆化搜索,正向递推或者逆向递推都可以。正向递推:dp[i][j]在i城市时剩余j时的方案数目。将输入的u、v、w用vector<vector<pair<int,int> > > vec,u当做下标,存入v、w到vec[u](有重边)。记忆化搜索从ddfs(0,a)到dfs(n,0)即可。以及记录是否超过么mod值20220201的方法:将+和%分开,先加,然后判断是否超过mod,然后记录下来,最后在取模。

网易雷火:14-17点 100+ 100+ 0 + 30

第一题可以想把hh:mm转换成分钟,然后对每一个边界时刻遍历,迭代累加,取最大。

第二题是辈分差在3以内的不能有情缘关系,先用一个拓扑排序记录辈分,然后查找(小坑:可能存在多个师门,不仅要记录辈分,还有记录祖师爷的id。没有师门关系的要先判断,不然默认的0会导致bug)

第三题写了一个半小时,精神和心态都炸裂了。

第四题看着是一个二维的线段树,不会写,写了一个暴力的O(m*n)解法

Bilibili:19-20点 100+ 100+ 100

第一题太简单了,记不清了。

第二题是设字符串长度为n,整数长度为m。如果整数比字符串长,直接返回(n+1)*n/2。如果整数不比字符串长:首先把字符串中长度为[1,m-1]的子数组统计一下(是一个n,n-1,......,n+2-m的等差数列,求和)。然后正向遍历字符串中长度为m的子字符串,直接与整数k的字符串比较。或者转成longlong比较

第三题背包dp的变形,首先用m-=arr[0].然后对abs(arr[1]),....,abs(arr[n-1])的abs求和得到sum。

sum <= abs(m) 直接返回 abs(sum-abs(m))

然后将区间和从[-sum,sum]转换成[0,2*sum],m+=sum

然后从dp[0][sum]=1的初始状态开始背包问题求解

米哈游:20-22点 100+ 100+ 0

第一题首先判断是否<=300,直接返回ceil(n/10)即可。然后贪心的思路,优先买月卡(每买一次,n-=300; n-=min(30,m);m-=30)

第二题是用线段树区间修改,维护区间最小值。然后对每一个查询,区间最小值>=2时说明可以被解雇,ret++。

第三题递推怎么写都是O(n^2),但当时大脑已经死机了,debug不出来。

8个小时,太要命了

#笔试##京东##网易雷火##bilibili##米哈游#
全部评论
老哥我跟你一样雷火第三题快写死了
点赞 回复 分享
发布于 2024-08-27 20:25 天津

相关推荐

不愿透露姓名的神秘牛友
06-18 17:37
点赞 评论 收藏
分享
大方的大熊猫准备进厂:1.教育背景:你希望从事什么专业的工作你的主修课就是什么;成绩优秀是你应该做的,没什么可描述的,成绩不优秀也许人家在大学忙着创业呢?(成绩优秀不一定是好事,只能说明多元化的大学你上成了高中,没有真正上明白大学,反而体现了你死板,不爱社交,没有别的突出能力) 2.实践经历:你想表达的意思没有说清楚。你是说你会个性化服务,还是你有实习经历。如果没有带来,经济收益,表彰,更好的发展前景,那你还不如说说提升了自己哪些技能。你说有人给你送锦旗我都能明白你优秀,但是你说你会xxxx,你说这话谁信,证据呢。 3.入伍经历:你描述的就是你的工作职责或者你应该做的,并没有体现出来你把这个事情做好了,而且入伍经历并不能证明你能干好你要应聘的工作,不如只写经历其余所有内容都不写。 4.荣誉技能:重点突出一下,但不要过多描述,这些荣誉的含金量懂得都懂。 重点:你要应聘什么工作(具体岗位,实习生不具体),你的期望薪资
点赞 评论 收藏
分享
05-29 22:11
门头沟学院 Java
Elastic90:抛开学历造假不谈,这公司的招聘需求也挺怪的,Java开发还要求你有图文识别、移动端开发和c++的经验,有点逆天了。
点赞 评论 收藏
分享
评论
2
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务