主要是记录了笔试时间、时长、题型,供来者参考。顺便分享下我的编程题代码管理框架:CodeforcesStarterPack。(By the way, 我的秋招面经汇总在这儿,学习经历总结在这儿)目录(牛客的文章编辑功能有限,不支持内部超链接好像)08241900 网龙08251900 莉莉丝08260930 灵犀互娱08271400 友塔08271900 腾讯游戏客户端公开课08301900 吉比特08311900 巨人网络09011900 星辉09031900 朝夕光年09061900 剑心09081900 快手游戏09101000 疯狂游戏09102000 腾讯IEG09111900 439909131800 三七互娱09132000 诗悦网络09152000 腾讯IEG09161900 西山居09171000 米哈游09171615 英雄互娱09201900 游卡09211500 沐瞳09241400 雷火10131900 趣加10142000 库洛(提前批引擎开发岗)10211930 SNK中国08241900 网龙60min,100分糟糕的笔试平台;题量太多;编程题竟然是以问答题的形式给出的。60分钟勉强做完- -单选:15x3C++计算机基础(操作系统、网络、数据库)问答1:2x8编译器会自动生成哪些成员函数解释RAII,并举例四个应用场景问答2:1x9改错(浅拷贝导致同一指针多次delete)编程:2x15实现快排实现UTF8字符串的reverse08251900 莉莉丝120min,110分好题!提前40分钟AK~~单选:12x5编程:3{10, 20, 20}重排链表成这样:7->5->3->1->2->4->6。类似于LC-328,常规链表操作题。将循环数组分成段,让两段的权值和的差值最小,输出最小差值。前缀和+二分搜索,。从数组中去除尽可能少的元素,使得剩下的元素满足先严格递增后严格递减。输出去除的元素个数。限制起点/终点的最长递减/递增子序列,。08260930 灵犀互娱165min,402分单选:20x5编程:5{50,50,60,70}divisable。给定数组和k,统计满足条件{两元素之和能整除k}的匹配数,输出个数。AC。minus。找出最长的子序列(题面中说是子串),满足序列内元素极值差不超过1,输出该序列的长度。AC。不记得了,但特别简单。AC。maze。给定二维矩阵,从左上出发,到右下结束,可以往右、上、下走。上下边界有wrap,wrap后分数重置。要求计算出离开时能获得的最大分数。80%。给定两字符串,判断能不能从一个变换成另一个,仅使用两种操作:1) 小写字母变大写;2) 删除小写字母。28.57%。游戏经历:1x1。不计分多选题。选出自己玩过的手游品类。游戏经历:1x1。不计分问答题。描述玩过的游戏,可上传附件。08271400 友塔120min,100分编程:4{15,20,30,35}Codeforces 402D给定一批需求的{value, deadline},每个需求需要一个工作日完成,求出这个月能获得的最大价值。解法是,先按deadline排序;然后动态规划,枚举需求,尝试加入背包(对于d=ddl~1,更新dp[d]=max(dp[d], dp[d-1]+value));最后取出dp中的最大值(因为完成最大价值方案所需的工作日可能比较小;即,dp[d]指前d天每天都工作所能获得的最大价值)。给定二位网格,从左上角出发,上下左右,到右下角,每次移动的时间消耗为目标格子的数值,此外有些格子是障碍物。要求到达右下角的最短用时。解法是Dijkstra最短路算法。给定一堆RGB三维颜色量,要求取出K种颜色构成集合,使得其中任意颜色对的色差()的最大值尽可能小,输出该最小化的集合内最大色差。当时没做出来。但是后来做出来了(并且发现了题源COCI2012-Pastele):如果能用边长为s的轴对齐立方体框住一堆点,那么,这些点彼此间的色差不超过s-1。用二分搜索,来找出能框住至少k个点的最小s。用三维前缀和,来实现立方体空间内的点数统计。08271900 腾讯游戏客户端公开课90min,100分单选:10x2多选:10x3编程:50{2道}判断第一个数组能否通过循环右移n位得到第二个数组。不知道为啥只过了50%。给定空间三角形ABC三个点,以及点P,求过点P的XZ平面法向量与三角形的交点,如果没有交点则输出0。来不及考虑没交点的情况,只过了87%。08301900 吉比特120min,100分选择题:2.5x16=40填空题:5x2=10编程题:10+15+25=50数组排序。AC。给定牌组,二人博弈,每次从单侧拿取任意数量的牌,两人均采取最优策略尝试最大化彼此间的分数差值,要求最优策略下先手会比后手高多少分。博弈动态规划。好像是骗了10%?魔法豆,宠物,一只之外的全部… 总之来不及看,也就没做。好像是骗了10%?08311900 巨人网络120min,120分多选:20x2问答:1x20编程:2x30拓扑排序判环。然而题目的测试用例有BUG。输入格式不对;输出只有一种可能。只能骗,而且能骗100%。区间最大值、区间更新的线段树。可惜来不及调试出线段树版本,只来得及用暴力通过55%。09011900 星辉50min问卷星形式的题…甚至reentrant...3道编程(1道必选,另外两道2选1)都是LeetCode原题。AK了。09031900 朝夕光年120min,100分但是提前35分钟AK了编程:100=20+25+25+30简单实现数组的相邻元素绝对差值。贪心对字母分组,使得输出字符串中每种字母出现至少两次,且统一字母的各实例的距离最小为k。二维网格图上找规律。给一堆怪的血条,要求给出对战表,使得相杀到最后一个也不留,或者只留一个且剩余血量最少。转换为分组问题,把血条分成两组,各组的血条和尽可能相近。进一步转换为01背包问题。09061900 剑心90min,90分编程:3x30判断给定的数有多少个奇序列(连续的正奇数组成的序列,序列之和等于该数)。数学规律题。能拆解出奇偶性相同的两个因数,便能构成一个奇序列。AC。给定,给个矩形/圆形攻击判定范围,给定角色当前坐标,要求出最少移动多少格子才能逃离攻击判定范围。栅格覆盖模拟题。AC。给定类似于varint的序列化函数,要求写出反序列化函数。来不及做出来。09081900 快手游戏90min,100分单选:8x3=24多选:8x3=24编程:52=15+20+17乘法逆元。AC。大数乘法。AC。给定一个折线路径,沿路行走,每隔s输出坐标。线性插值模拟。AC。09101000 疯狂游戏90min,100分编程:50=20+30给定k和target两个整数,问k能否通过任意次k=k*2+1或k=k*3+1变换得到target。解法是DFS从target降解到k,要注意负数情况,以及需要做好剪枝。模拟题。按照规则交换数组中部分区域的元素即可。问答:1x50要求讲自己的一个项目,给出这几方面的阐述:关键技术点时间/空间复杂度取舍应用了哪些设计模式设计不足与解决方案最大挑战09102000 腾讯IEG120min,100分编程:5x20=100二叉树DFS统计满足条件的根叶路径数量使用两个multiset维护动态数组的中位数贪心求解最大的差之和数学规律+模(快速)幂动态规划。但是当时没想出来,写了二分,能过样例。(牛客的评测机炸了,系统不给评测,不知道AC没;运气好的话应该能AC掉4个,第5题能得到部分分)09111900 4399120min,120分单选:10x2=20编程:18+26+36=80给定字符串,要求计算出其中满足条件{形如012...9的数字递增}最长子串,且要求。遍历一遍就好。(竟然)要按照LeetCode格式建树,然后才能做题。给定二叉字典树,DFS所有叶根路径,找出字典序最小的。生命游戏模拟。问答:10x2=20大学期间课余时间怎么度过的,投入最多的事项是什么,为什么,有什么成果有没有遇到过复杂或困难的问题,怎么解决的(没有OJ判分,输入输出格式不规范,这个笔试平台属实不太合格)09131800 三七互娱90min,100分选择题:20=10x2?问答题:80=10+15+15+20+10+1009132000 诗悦网络60min,110分单选:10x6=60问答:2x5=10编程:20x2=40?实现冒泡排序找出链表的中间结点09152000 腾讯IEG120min,100分编程:20x5=100链表排序。AC。有序集合。AC。排序。AC。集合+字典序。AC。滑动窗口+前缀和。骗分6.67%。09161900 西山居120min,120分单选:5x5=25多选:5x5=25填空:2x5=10编程:40用lambda递归实现斐波那契。AC。买股票,maxProfit。AC。问答:1x20=20用C++实现undo、redo的代码框架09171000 米哈游120min,100分单选:10x1=10多选:15x2=30编程:3x20=60分词和判断回文。AC。贪心排序。0%。数值5进制模拟。AC。09171615 英雄互娱60min,60分编程:3x20=60。都很简单,AK。快慢指针找环的入口。AC。忘了。但反正AC了。完全背包,用硬币凑金额。AC。09201900 游卡90min,100分单选:2x10=20多选:2x10=20编程:3x20=60。提前50分钟AK。将数组中的0移到尾部级数展开估计圆周率不用比较运算符求两个32位整数中的最大值09211500 沐瞳60min,100分单选:9x8=72问答(编程):1x28=28。提前40分钟AK。删除单链表中指定取值的全部节点。AC。09241400 雷火180min,100分编程:100=15+25+30+30模拟。AC。暴力模拟。(记录每个玩家的草丛编号集合)。AC。01背包变种。(同类属性的属性值保持正数,不同类的改为负数,从而转化为限制物品数量的、存在负数的01背包问题)。AC。类似于CF上的这一题。只得了1.67%分。10131900 趣加90min,100分单选:15x2=30多选:5x3=15填空:5x3=15问答形式的编程:15+15+10=40计算数组中最大的连续元素和判断两颗二叉树是否相同实现String类的几个基本的成员函数10142000 库洛(提前批引擎开发岗)120min,80分问答:8x10=80其中有一道编程:一维坐标轴上,维护线段集合,提供三个操作:添加线段、删除线段、查询与指定线段重叠的全部线段。没做出来,只写了暴力解法。10211930 SNK中国90min,100分单选:10x2=20填空:4道,14分问答:5道,31分编程:5+5+10+15=35分。有编译运行的功能,但是没有测试用例评分;只要不报错就能通过评测;所以,得自己在代码里写测试用例才能测到代码正确性。实现简单的String类。计算数组中最长连续1的长度。计算字符串数组中的最长公共前缀。计算矩阵中的最长递增路径的长度。
点赞 32
评论 2
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务