【腾讯】腾讯校招 游戏客户端研发 凉经 共三面

9.14 第三次面试 电话面试

还是复试,算上上一次,就是第二次复试了
渲染管线
内存池
pbr brdf
玩过什么游戏
欧拉角
游戏用到的网络协议
内存管理
线程间的无锁通信

GG了,好多都不会。估计自己学着写一个渲染器会好一点

9.5 第二次面试

acm经历、美赛经历
说一下new,delete可能出现的问题
有没有避免new、delete的方法
share_ptr和unique_ptr的使用
10000张扑克牌,随机洗牌
说一说渲染
怎么学习的计算机图形知识
有没有做过系统的客户端、并发的呢
生产者和消费者模型
信号量
读过的英文文献、技术文章

反问:
周六还上班么
工作室:timi

感受:
感觉自己菜鸡了,洗牌那个之前有看到过、但是全忘了。智慧指针就从来没用过。

9.6 第二次后台&综合 笔试 --- 笔试邀请已拒绝。

8.31 第一次面试

介绍自己游戏客户端相关的项目 5min
问了下实习的项目 具体问到了simd

c++:
c++的类型转换有哪几种
c++的lamda表达式,捕获方式有哪些
智能指针和垃圾回收
c++的移动语义和完美转发

4个题:

  1. 图片说明
  2. 已知向量|A|=|B|=|C|=1,A+B+C=0。求A*B+B*C+C*A,*是点乘。
  3. 图片说明
  4. 10个问题&5分钟,问出考官心里的词

8.23 后台&综合 笔试场

牛客五个编程题

1. 给n个数的链表,输出去除第k个数后的链表。

不需要真正实现链表。

2. 给N=5000长度的字符串,问在去重后的N所有子序列里,字典序第k小的,k<=5。

取出每个字符和它的下一个(两个、三个、四个)字符组成的 共 5*N个子序列, 这些子序列的长度不超过5,sort这些子序列后取不重复的第k小的串。

3. 给一个正数n,n最大1e12,取俩非负数a、b满足:a+b=n ,求最大的s(a)+s(b) , s(x)表示的是x的每一位的数字之和。有100个case。

a取 0,9,99,999,9999 ,... 里最靠近n的那个数,b取n-a,最后算一下sa和sb。

4. 给N=5000个宽度为1的木板的高度a[I],高度范围1e9正整数,问用一把宽度为1的刷子最少刷几次能把木板都刷完。这里的刷子可以横着刷 也可以竖着刷,横着刷的时候不能越过板子,木板底部对齐。

这个题我的解法是错的,时间复杂度太大,还是写上这个错误的O(N^3)解法:

DP[I][J] 表示前i个木板被刷完、而且第i个木板的1~j米是横着刷完的 刷的最小次数。

初始化:DP[0][X]=X, DP[X][Y]=N

递推: 1. DP[I][J] = min( DP[I-1][K]+1+J-K ), 这里的J取0~a[I] ,这个意思是前一个底部横着刷有k个,现在的底部想刷j个的话,就需要额外的j-k次刷墙,另外需要一次竖着刷。
2. DP[I][ A[I] ] = min( DP[I-1][ K ] + A[I] -K ),这个式子是说横着刷a[I]高度的时候,就不需要额外竖着刷一下了。 注意a[I]如果大于N,就不需要第2个递推了。

这个算法是O(N^3) (IJK范围都是占5000),交上去T掉。

剪枝:K取 J-20~J 范围, 卡过去了。

5. N=400长度的字符串,1e5个询问,每次问[L,R]的子序列的最小拆分次数,拆分是把一个子序列拆成连续的子子序列,每个子子序列必须是回文字符串。

N^3预处理一个二维布尔数组m[I][J],表示[I,J]子序列是不是回文串。用马拉车算法更快。
把m[I][J]==true看作是路径长度为1的路径,m[I][J]==false看作长度是400的路径。每条路径的起点是i,终点是j+1。
floyd算法算出每一对i,j的距离,这个距离就是它要询问的东西。

踩踩github,点个关注北

#面经##校招##腾讯##游戏研发工程师#
全部评论
补个高手的代码:https://www.nowcoder.com/discuss/486673?type=0&order=0&pos=8&page=1&channel=666&source_id=discuss_center_0
2 回复 分享
发布于 2020-08-23 23:36
楼主4个编程题做出几道呀
点赞 回复 分享
发布于 2020-09-07 20:34
楼主能透露是哪个工作室吗?
点赞 回复 分享
发布于 2020-09-05 16:40
提前批一共就两次笔试吗
点赞 回复 分享
发布于 2020-09-05 09:21
一毛一样,面试官还把题目说错了,
点赞 回复 分享
发布于 2020-08-31 21:15

相关推荐

04-14 15:39
已编辑
电子科技大学 客户端开发
📍面试公司:Unity中国💻面试岗位:平台开发1、一面&nbsp;30mina)自我介绍b)字节对齐&nbsp;&lt;-&nbsp;不只是字节对齐!现代C++按行对齐!c)C++引擎有没有调优经验(完全说不出来qwq)d)多线程编程、如何优化多线程对锁的应用?&nbsp;没答好e)如何使用AI帮忙找到性能瓶颈f)对图形学有了解吗(说了一下渲染流程、被说讲的太粗了g)说一下项目的协议实现h)服务端如何选举房主i)热更新是怎么做的i.Lua+资源包,lua调用cpp的代码读取对应的资源包ii.(项目内容)j)有跨平台适配的经验吗i.Windows、安卓、ios、鸿蒙ts(少)k)UI适配l)折叠屏分辨率m)反问2、二面&nbsp;45分钟a)自我介绍b)C++用的什么版本?用过什么新特性?c)有没有用过多线程&lt;-&nbsp;大问题d)有没有实现过什么图形学相关的内容e)简历-&gt;预测状态回滚是什么?f)简历-&gt;shader切片是怎么做的?g)遇到过最棘手的bugh)如何修偶发的bugi)TGC的自研引擎有什么特点?j)和unity跟UE比呢?k)有没有什么调优经验&lt;-两次都问了l)Shader用的什么语言?m)Shader的浮点数精度差异是怎么来的?(显卡驱动n)简历-&gt;客户端权威和服务端权威3、三面&nbsp;50mina)自我介绍b)简述游戏引擎架构c)项目d)&nbsp;抗压能力4、&nbsp;&nbsp;HR面&nbsp;40min🙌面试感想:人都挺好,越往后面试官水平越高,就是不知道offer下不下得来4.14更新:已挂;应该还是多线程跟调优经验太少
查看27道真题和解析
点赞 评论 收藏
分享
全程45min,面试官没开摄像头,不过倒是没压力我,人挺好的。全程没有手撕,不知道啥意思,感觉可能不想要我?自我介绍问我最近在玩什么游戏1.你觉得英雄联盟里那个英雄的设计你觉得很好2.如果要你设计一个佛耶戈,你会怎么实现捡魂的机制3.比如说佛耶戈捡豹女的魂的时候,只能用一个形态的技能,这个该怎么处理4.瑞雯的q技能有多端,这个该怎么实现5.如果说我想让这个q技能的衔接判定在技能的最后几帧才触发该怎么办6.如果说我想让这个技能在后摇阶段人物可以移动,动画上该怎么处理7.如果说我想让这个技能在后摇阶段人物可以移动,代码上该怎么处理8.如果我想让一个技能施法中不能移动,我该怎么处理9.安妮的w是一个扇形检测,我该怎么在ue里实现这个扇形检测10.ue的boxcollision用过吗(怀疑是刚才我没说他才问的)GAS方面1.说一说GAS框架里都有什么2.GameplayAbility该怎么激活3.TryActivateAbility的具体实现是怎么样的(不知道啊)4.GameplayAbility中都有什么主要的接口(这么问我直接啥也想不出来了)5.你的项目里是怎么做伤害检测的6.GameplayAbility里那些Tag的容器知道都有什么吗(就记得Block&nbsp;Cancel其他忘了)7.你平时用哪个用的多8.GameplayAbility的实例化策略知道都有什么吗,如何恰当得分配策略9.多次实例化的策略适用于哪些Ability(没想出来)10.GameplayTag的底层数据结构是什么11.如果让你设计这么一棵树方便查询的树,你该怎么设计(用哈希表去映射?瞎扯上去了)UE方面1.除了GAS你还学过哪些2.PlayerController你是怎么理解的3.PlayerController里面应该放什么逻辑4.Move的逻辑是应该放在Ability里还是PlayerController里5.Montage里的xxx你知道吗(听都没听过)6.Montage的底层xxx是怎么实现的(不知道,没研究过)7.怎么求两个actor朝向夹角的角度8.两个向量叉乘得到什么C++八股1.介绍一下智能指针2.如果用一个裸指针去实例化两个Shared_ptr会怎么样3.如果说我就是要用这个指针实例化该怎么处理(不知道)日常1.你才大二就出来实习吗,学校怎么办2.从什么时候开始学游戏开发的3.为什么选择虚幻反问环节这么一看感觉自己好多都没答上来,估计寄了😭
点赞 评论 收藏
分享
点赞 评论 收藏
分享
04-08 13:35
已编辑
门头沟学院 游戏后端
bg:京2本信息安全&nbsp;川9硕软件工程&nbsp;一段本科小厂三个月引擎岗实习timeline:2月过年前不知道多少号投递的游戏客户端提前批3.13&nbsp;集体笔试真的以为简历挂了,实则L1开始的比较晚一共12道题时长一小时,一道算法,剩余全是读程序改错,添加功能的题-----------------------------------------------------------------------------------------------------------------------------3.24&nbsp;第一次一面时长半小时&nbsp;面完一小时平级释放给同部门其他组(当时还以为是过了)纯八股无手撕无项目无实习内容,跟这个链接里面的题目85%相似https://www.nowcoder.com/share/jump/1775621209350这次是我第一次处女面,面的很烂很紧张,很多会的都没答上-----------------------------------------------------------------------------------------------------------------------------3.26&nbsp;第二次一面时长一小时,面完5分钟秒过约下一面无手撕1、自我介绍2、为什么想做游戏,心路历程C++八股3、多态的种类4、多态的底层实现机制5、map和unordered_map底层实现6、哈希表底层实现7、哈希冲突解决方法8、在一个程序运行中发现,哈希表冲突严重,在不修改哈希函数的情况下如何缓解冲突9、map为什么用红黑树而不是AVL10、SIMD10、为什么要内存对齐11、内存对齐规则12、当场给了一个strcut问在内存里大小13、如何快速判断OS是32还是64位14、如何设计智能指针(shared_ptr)15、为什么要有强弱引用计数16、weak_ptr如何打破循环依赖17、cpp编译过程18、编译阶段发生了什么图形学17、渲染管线18、shadowmap&nbsp;pcf&nbsp;pcss19、AABB&nbsp;八叉树20、实习相关图形学aicoding21、你的实验室项目如何用ai帮助你完成项目22、少量个人项目反问这次面试明显感觉好了很多也不紧张了,除了simd基本都答上了,五分钟秒过-----------------------------------------------------------------------------------------------------------------------------3.27&nbsp;二面时长一小时,无手撕1、自我介绍2、学校实验室研究方向c++八股1、不用sizeof的情况下如何快速判断cpp程序是32bit还是64bit的OS2、空类大小是多少3、为什么空类大小是14、有个派生类继承了空类,派生大小是多大5、什么是虚继承6、虚继承解决什么问题7、栈和堆的区别,回答了之后追问本质区别,没答上实习经历8、问了15分钟实习工作内容个人项目和AIcoding超级拷打9、问了半小时个人项目实现细节,细到不能再细,真的人麻了个人生涯规划做游戏的初衷AICcoding看法能实习时长关注哪些游戏行业的动态反问-----------------------------------------------------------------------------------------------------------------------------4.8&nbsp;催面秒挂等太久了没消息发邮件询问进度,太经典了,催就秒挂,好无力。其实我觉得二面面的还将就吧,个人项目底层确实有些答不上来,天美L1真的地狱难度
腾讯求职进展汇总
点赞 评论 收藏
分享
评论
1
45
分享

创作者周榜

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