23.07.02疯狂游戏 游戏开发实习生 研发岗笔试

7.2 疯狂游戏 游戏开发实习生 研发岗笔试

编程题:

  1. (20分)输入k和target,k在数组里,那么2k+1或者3k+1也在数组里,问数组中有无等于target的数,若有则输出true,没有则输出false
  2. (30分)输入width和一个vector像图数组,输出按照垂直翻转的像素图,4个数表示一个像素点大概要求的输入输出效果如下输入:2,[1,2,3,4,2,2,2,2,3,3,3,3,4,4,4,4]输出:[2,2,2,2,1,2,3,4,4,4,4,4,3,3,3,3]

主观题:

(50分)

讲述一下你参与制作过的一款游戏:

  1. 制作的技术点
  2. 时间复杂度/空间复杂度的分析
  3. 应用到了什么设计模式
  4. 设计上有什么不足,相应的解决方案?都是产生的不足了怎么会解决(
  5. 遇到了什么挑战

编程题提交的代码:

1.通过85.71%(题面完全没给数的范围,所以负数有可能要特殊处理?后来加了dfs2也没过最后一个点)

class Solution {
public:
    int t;
    bool flag=0;
    void dfs(int x)
    {
        if(x>t||flag==1) return;
        if(x==t)
        {
            flag=1;
            return;
        }
        if((t-1)%2==0) dfs(x*2+1);
        if((t-1)%3==0) dfs(x*3+1);
        return;
    }
    void dfs2(int x)
    {
        if(x<t||flag==1) return;
        if(x==t)
        {
            flag=1;
            return;
        }
        dfs(x*2+1);
        dfs(x*3+1);
        return;
    }
    bool kInArray(int k, int target)
    {
        t=target;
        if(k<0&&t<0) dfs2(k);
        else dfs(k);
        if(flag==1) return 1;
        return 0;
    }
};

2.通过100%

class Solution {
public:
    vector<int> flipImage(int width, vector<int>& pixels)
    {
        int a[width*4+1];
        vector<int> v;
        for(int i=0;i<pixels.size();i++)
        {
            a[i%(width*4)]=pixels[i];
            if((i+1)%(width*4)==0)
            {
                for(int j=width;j>=1;j--)
                {
                    for(int k=(j-1)*4;k<=(j-1)*4+3;k++)
                        v.push_back(a[k]);
                }
            }
        }
        return v;
    }
};

全部评论
逆向解更快 public static boolean method1(int k, double target) { if (k > 0 && target < 0) { return false; } if (target == k) { return true; } else { double tmp = (target - 1) / 2; if (tmp % 1 != 0) { return false; } return method1(k, tmp); } }
1 回复 分享
发布于 2024-03-02 19:57 北京
请问大佬收到面试了吗
1 回复 分享
发布于 2023-07-23 11:20 广东
我做的也是这套题
点赞 回复 分享
发布于 2024-05-26 11:43 北京
class Solution { template<typename com=""> bool dfs(int k, const int& target, const Com& com) { if (k == target) return true; else if (com(k, target)) return false; else { if ((k!=2*k+1)&&dfs(2 * k + 1, target, com)) return true; if ((k!=3*k+1)&&dfs(3 * k + 1, target, com)) return true; return false; } } public: bool kInArray(int k, int target) { if (k >= 0) return dfs(k, target, std::greater<int>()); else return dfs(k,target,std::less<int>()); } }; 当测试用例为[-1,-4]的时候楼主的dfs2会过不了,存在死递归</int></int></typename>
点赞 回复 分享
发布于 2024-04-16 19:12 重庆
void dfs2(int x) { if(x
点赞 回复 分享
发布于 2023-09-10 11:25 辽宁
后续还有面试么大佬
点赞 回复 分享
发布于 2023-07-23 11:39 北京
第一题的判断感觉得用t/2>k
点赞 回复 分享
发布于 2023-07-20 12:32 陕西

相关推荐

10-25 05:09
自己背景,西北普通双非计科,unity客户端开发,有一个3d&nbsp;demo,一个2d项目,一段三个月小厂实习,无竞赛,算法水平hot100熟练,总题数大概总共加起来200多,除hot100以外,其他的不一定保证能够全写出来,八股水平一般,问深了答不出来,编程语言比较熟悉cpp和c,9月底才开始投递简历。网易互娱一面复盘:自我介绍项目中实现武器攻击的时候碰撞是怎么做的实习主要干了些什么进程和线程区别,进程和线程调用过程中加锁是为什么,有哪些锁,加锁的实际运用是怎么样的tcp和udp区别以及使用场景和作用,tcp在炉石传说中使用的时候,前段时间有拔网线来卡bug进行下一回合,是什么原理?红黑树了解吗?(这里我回答不太了解),二叉树呢?(回答会正常使用)说一下二叉平衡树的概念,(我没背具体概念,只有用自己的话说了,早上醒的太早,脑子抽了描述成二叉搜索树了,当时面试官没说什么,下来之后查了一查自己都想笑了)智能指针有哪几种,unique_ptr是怎么实现唯一性的堆和栈区别,栈主要的作用是什么new和malloc是怎么使用的,内存泄漏是为什么?怎么样去避免手撕:给定四个点,分别是两个矩形的左上点和右下点,问怎么判断这两个矩形是否相交,增加问题:如果有100万个矩形,有一个矩形放到其中,怎么判断这个矩形和其中哪些矩形相交,只用描述思路,不能用遍历玩过哪些游戏你最喜欢的fps游戏类型爽点是什么?网易的游戏有玩过吗?面试官人很好,都是常规八股,自己答得有点差,自己水平没有那么高,本来冲大厂就是测开的,但是没有岗了,硬投了一波客户端,感觉大概率凉了。笔试:两道编程题,只能a第一题,第二题挺难的,是笔试前一天找笔试经历的时候看qq群里的高手分享的笔试经验才a的感想:现在游戏开发的前途挺差的,投了三十几个,都是中大厂的,不是直接简历挂,就是在泡池子简历筛选,有4,5个笔试吧,面试只有两个,其中两个厂在投简历的时候感觉很逆天,4399填简历是我感觉最逆天的,还有一个莉莉丝,这个厂真的招人吗,全网都没看到莉莉丝的offer,看到进二面的都没几个,问了问同班同学的情况也没人找到工作,不是在投递就是半摆烂了,笔试都没有几个,自己的项目水平自认为还可以,手搓单机2d小游戏问题不大,之前进的小厂月薪3k,人不到20个,后面说转正6到9k还有奖金什么的,干的越久越看像画饼,自己如果找不到工作,就只能明年6月去北上广深小厂黑作坊做游戏了,感觉都没什么hc,学游戏开发真是一条路走到黑。
落贝贝:同学,瞅瞅我司,医疗独角兽, 因为新业务扩展,11月校招HC暴增! 我的主页最新动态,绿灯直达,免笔试~
查看13道真题和解析
点赞 评论 收藏
分享
11-12 21:41
已编辑
门头沟学院 Unity3D客户端
很神奇,10月的笔试,我记得我的笔试编程一个都没做,昨天找我说进面了,应该是有大佬把他们鸽了吧。流程走的很快,今天面完,晚上九点半&nbsp;HR&nbsp;找我了解薪资。其实我报的也不是很高,但是她说还是给不到,就说后面再联系了,可能最近效益确实不好吧。11.11&nbsp;&nbsp;&nbsp;&nbsp;19.30技术一面,流程大概&nbsp;35min。因为和&nbsp;HR&nbsp;说了一下我这边签了三方在实习,所以面试官先问了实习相关的情况,然后问了问简历上的项目,最后看我简历上写的熟悉C++和CSharp,让我挑了一个最熟悉的来继续提问。我选的C++,问了很多基础的八股,但是因为最近实习都没怎么复习,所以回答得乱七八糟,但是第二天还是告知我过了,于是又约了二面。11.12&nbsp;&nbsp;&nbsp;&nbsp;19.30技术二面,流程大概&nbsp;40min。这位面试官全程在询问基础相关的东西,像浮点数的设计、3.75&nbsp;用浮点数表示是什么形式、哈希表中的&nbsp;buckets&nbsp;是如何做到在&nbsp;O(1)&nbsp;时间内找到对应索引的&nbsp;bucket&nbsp;的。最后还问了&nbsp;CSharp&nbsp;中的&nbsp;GC,中间我说到去搜寻引用然后进行释放时,面试官询问这个搜寻具体是怎样去找的,没有答上来。最后口头手撕了一个二分查找,磕磕巴巴说出来了。结束后面试官说一周内给我答复,因为还在面其他人,但&nbsp;HR&nbsp;却在一小时后给我打电话来了解情况并想约三面
查看9道真题和解析
点赞 评论 收藏
分享
评论
7
42
分享

创作者周榜

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