网易互娱笔试题

第一题只能过85...:
public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        long n1 = in.nextLong();
        long n2 = in.nextLong();
        long min = getMin(n1,n2);
        long max = getMax(n1,n2);
        System.out.print(min+" ");
        System.out.println(max);
    }

    private static long getMax(long n1, long n2) {
        if (n1 == n2) return n1;
        if (n1 < n2) {
            long tmp = n1;
            n1 = n2;
            n2 = tmp;
        }
        long res = n1;
        long i = 1;
        while (res % n2 != 0) {
            res = n1 * ++i;
        }
        return res;
    }

    private static long getMin(long n1, long n2) {
        if (n2 == 0)
            return n1;
        return getMin(n2,n1%n2);
    }
第二题100:
 public void removeDuplicates(ListNode head) {
        // 在这里编写代码
        int count = 1;
        ListNode last = head;
        ListNode cur = head.next;
        while (cur != null) {
            if (cur.val == last.val) {
                count++;
                if (count == 3) {
                    ListNode next = cur.next;
                    cur = next;
                    last.next = next;
                    count = 2;
                } else {
                    ListNode next = cur.next;
                    last = cur;
                    cur = next;
                }
            } else {
                count = 1;
                ListNode next = cur.next;
                last = cur;
                cur = next;
            }
        }
    }

第四题可以过75:
public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int m = in.nextInt();
        String[][] arr = new String[n][m];
        for (int i = 0; i < n; i++) {
            String str = in.next();
            for (int j = 0; j < str.length(); j++) {
                arr[i][j] = str.charAt(j)+"";
            }
        }

        if (n > m) {
            int tmp = n;
            n = m;
            m = tmp;
        }
        int maxBian = n;

        //i代表边长,从最大边长开始找,逐渐缩小要找的正方形的长度
        for (int i = maxBian; i >=1 ; i--) {
            //jk代表选定的第一个目标
            for (int j = 0; j <= n-i; j++) {
                for (int k = 0; k <= m-i; k++) {
                    //记录选定的字符
                    String begin = arr[j][k];
                    //l,o代表要寻找的与选定的字符相同的字符的坐标
                    //从jk的下一个位置开始往后搜索
                    for (int l = j; l <= n-i; l++) {
                        int o = k+1;
                        if (l != j) o =0;
                        a:for (; o <= m-i; o++) {
                            //此处找到与目标字符相同的字符
                            if (arr[l][o].equals(begin)) {
                                //接下来判断这个字符和目标字符是否按照规定的长度形成相同的字符串矩形
                                int width = 0;
                                int height = 0;
                                int q=j,w=k,e=l,r=o;
                                while (width < i) {
                                    while (height < i) {
                                        if (!arr[q][w].equals(arr[e][r])) {
                                            //只要发现没有对应上就跳出并继续寻找下一个可能的正方形
                                            continue a;
                                        } else {
                                            w++;
                                            r++;
                                        }
                                        height++;
                                    }
                                    height = 0;
                                    w=k;
                                    r=o;
                                    width++;
                                    q++;
                                    e++;
                                }
                                System.out.println(i);
                                System.out.println((j+1)+" "+(k+1));
                                System.out.println((l+1)+" "+(o+1));
                                return;
                            }
                        }
                    }
                }
            }
        }
        System.out.println(0);
    }




#网易互娱##题解#
全部评论
第一题同85
点赞 回复 分享
发布于 2019-09-20 19:40
第一题同85
点赞 回复 分享
发布于 2019-09-20 19:49
最大公因数*数a的另一个因子*数b的另一个因子=最小公倍数 (我也是现场隐约觉得有这个可能,推了下) 问题是呢...long可以承载a或者b 但是a*b的超出了long的范围 我改用大整数来计算和返回,ac了
点赞 回复 分享
发布于 2019-09-20 19:45
第三题是不是01背包啊
点赞 回复 分享
发布于 2019-09-20 19:36

相关推荐

🔥【网易互娱测试开发岗】暑期实习面经独家揭秘!26届速存!投递传送门:https://game.campus.163.com/m/home?st=YTE1ZTlhNDUtNmNlMC00ZTI5LWE2ZjUtZGMxNTNhNDhjNzlm内推码:【9QcfNR】🚀&nbsp;【面试全流程拆解】测试开发岗专属版1️⃣&nbsp;笔试环节题型结构:编程题(3道,ACM模式):中等难度********+游戏逻辑测试特化题真题示例:python测试《永劫无间》武器耐久系统:输入攻击次数列表,每次攻击消耗耐久值=当前耐久*0.1,耐久≤0时武器断裂求武器断裂时的攻击次数(需处理浮点精度问题)def&nbsp;break_attack(attacks):current&nbsp;=&nbsp;100.0count&nbsp;=&nbsp;0for&nbsp;_&nbsp;in&nbsp;attacks:current&nbsp;-=&nbsp;current&nbsp;*&nbsp;0.1count&nbsp;+=&nbsp;1if&nbsp;current&nbsp;&amp;lt;=&nbsp;1e-6:&nbsp;#&nbsp;处理浮点误差return&nbsp;countreturn&nbsp;-1测试设计题:针对游戏场景设计测试用例真题示例:&amp;gt;&nbsp;&amp;quot;请为《蛋仔派对》新上线的「空中足球」模式设计测试用例,需覆盖物理引擎、网络同步、外挂防御等维度&amp;quot;2️⃣&nbsp;技术面(2轮硬核拷打)高频考点:游戏测试理论:手游兼容性测试的机型覆盖策略(TOP&nbsp;50机型如何取舍?)弱网测试工具链(如何模拟全球不同地区网络波动?)外挂检测方案(内存修改/加速器/自动脚本的防御思路)自动化测试实战:用Python+Pytest搭建自动化测试框架(要求支持《第五人格》多角色技能组合测试)如何用Charles抓包验证游戏商城的支付链路?Jenkins持续集成中测试报告生成的最佳实践游戏开发底层:Unity&nbsp;Test&nbsp;Runner与自动化测试框架整合方案游戏客户端AB包差异测试方法(Hash值对比/资源依赖树校验)3️⃣&nbsp;HR面(隐藏雷区预警)致命提问:&amp;quot;如果策划坚持认为不是BUG而是特性,你会怎么办?&amp;quot;&amp;quot;如何看待测试在游戏研发中的地位?&amp;quot;&amp;quot;连续3天通宵复现偶现崩溃BUG,但依然无法定位原因,你会如何处理?&amp;quot;✅&nbsp;HR面高情商话术-&nbsp;当被质疑测试价值时:&amp;gt;&nbsp;&amp;quot;我认为测试是用户体验的最后一道防线,比如《阴阳师》抽卡概率公示就是通过严谨测试建立的玩家信任&amp;quot;-&nbsp;被问加班态度:&amp;gt;&nbsp;&amp;quot;我有凌晨复现BUG的经历(举个学校项目例子),关键是要用自动化手段提升效率,而不是纯人力消耗&amp;quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(评论区留言岗位+城市,楼主及时跟进)
点赞 评论 收藏
分享
我也想要红名timeline————————3.23笔试(2.1/3)3.25约一面3.26一面4.3约二面4.8二面4.21约hr面(已拒)一面:上来自我介绍,然后项目拷打,然后八股底层内容拷打1.排序算法,以及他们的时间复杂度,复杂度是怎么算的,快排平均复杂度怎么算2.C++容器,解释哈希表,哈希表中不使用链表该怎么解决key值冲突(不使用其他容器)3.vector和array区别,使用场景4.map,unordered-map底层实现5.智能指针&nbsp;sharepnt中的引用计数的内存在哪儿?会单独有一份内存存储所有智能指针的引用计数吗?当你用它指向一个共享数据时,再创建一个,那第二个怎么知道引用计数的内存地址呢?6.虚函数用来干什么?实现机制是什么?虚函数表怎么记录的?每创建一个派生类对象都会创建一个虚函数表吗?7.C++编译过程了解吗?8.tcp三次握手四次挥手过程9.python和c++有什么不同10.python字典结构中,什么东西不能做key值?nplist为什么不能做?11.玩过游戏吗?了解游戏引擎吗?为什么想做游戏开发?12.new和delete过程了解吗?我想用new指向之前new好的地址怎么办?13.用过ai吗?平时怎么用?用过代码ai器吗(类似cursor)14.一个爬楼梯方法问题,秒了,没让写,让说实现思路最后反问我有什么不足,说对不明白的东西需要刨根问底,不懂的东西要去搜一下,至少直觉上要有一个认知全程1h10m,面试官很好,全程说说笑笑二面:因为当时电话里面答应好二面了,所以就继续面了一下。首先是对于项目的一个介绍。介绍以后呢,我是两个项目,他就问你对于每个项目中遇到的最难的点是什么?怎么解决的?对于项目的细节也进行了一些提问。然后应该就是几个题,前面几个没让写1.给一个数组,现在放一个机器人上去,可以上下左右移动,但是只能移动到比当前数字更低的位置,要求你计算出机器人放在每个位置时可移动的最远步数。2.如果数组是无序的,该怎么去求呢?3.给你一条路,路无限长,路上有n个行人,每个行人有两个特性(速度大小,移动方向),问你怎么求出最先碰面(所有行人中,最先相遇的)的行人的所需时间。时间复杂度4.给你两个数组头部指针,这两个数组是有序的,让你合并数组,并且合并以后数组仍是有序的。写完以后让改成模版参数(忘了模版声明怎么写了)5.问了到岗时间,实习时间,投了哪些公司?主要投递岗位是什么?实习地点选择?为什么想来服务器开发?6.如果多个公司都有offer怎么选择?7.具体游戏研发分为服务器引擎开发,服务器工具开发,游戏玩法开发,如果能进来想做哪方面?8.七个工作日以内会通知结果9.介绍了一下进来以后的培养流程10.问表现,说其实面试不是去难倒你,而是去看你的发光点和优势在哪儿。所以每个人的表现都不一样,但是具体不能说谁好谁坏。但是自己的表现自己应该清楚,要明白自己比别人厉害在哪里,差在哪里,然后自己面试以后回顾去改进。不知道为啥流程需要这么久,可能太菜了一直在泡池子,刚被捞起来,hr给我打电话,第一句话就是抱歉,流程太慢了,然后问现在约hr面我会不会接受,我就拒了
查看24道真题和解析
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务