0419阿里笔试

Q1-100%

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class Q1 {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt(), k = scan.nextInt();
        int[] nums = new int[n];
        for (int i = 0; i < n; i++) nums[i] = scan.nextInt();
        int l = 0, r = 0, max = 0;
        long ans = 0;
        Map<Integer, Integer> map = new HashMap<>();
        while (r < n) {
            int v = map.getOrDefault(nums[r], 0);
            map.put(nums[r], v + 1);
            max = Math.max(max, v + 1);
            while (max >= k) {
                ans += n - r;
                v = map.get(nums[l]);
                if (v == 1) map.remove(nums[l]);
                else map.put(nums[l], v - 1);
                if (v == max) max--;
                l++;
            }
            r++;
        }
        System.out.println(ans);
    }
}

Q2-100%

import java.util.Scanner;

public class Q2 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int m = sc.nextInt();
        String[][] matrix = new String[n][m];
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < m; j++) {
                matrix[i][j] = sc.next();
            }
        }
        int q = sc.nextInt();
        for (int i = 0; i < q; i++) {
            int t = sc.nextInt() - 1, y = sc.nextInt() - 1;
            if (matrix[t][y].equals("-1")) System.out.println(0);
            else {
                int score = dfs(matrix, t, y, matrix[t][y].charAt(0), n, m);
                updateMatrix(matrix, n, m);
                System.out.println(score);
            }
        }
    }

    private static int dfs(String[][] matrix, int r, int c, char color, int n, int m) {
        if (r < 0 || r >= n || c < 0 || c >= m || matrix[r][c].charAt(0) != color) return 0;
        int score = matrix[r][c].charAt(1) - '0';
        matrix[r][c] = "-1";
        score += dfs(matrix, r + 1, c, color, n, m);
        score += dfs(matrix, r - 1, c, color, n, m);
        score += dfs(matrix, r, c + 1, color, n, m);
        score += dfs(matrix, r, c - 1, color, n, m);
        return score;
    }

    private static void updateMatrix(String[][] matrix, int n, int m) {
        for (int j = 0; j < m; j++) {
            int cnt = 0;
            for (int i = n - 1; i >= 0; ) {
                while (i >= 0 && matrix[i][j].equals("-1")) {
                    cnt++;
                    i--;
                }
                while (i >= 0 && !matrix[i][j].equals("-1")) {
                    matrix[i + cnt][j] = matrix[i][j];
                    i--;
                }
            }
            while (--cnt >= 0) matrix[cnt][j] = "-1";
        }
    }
}

Q3-10%

全部评论
第三题 (n-2)*676*(26^(n-3)) 快速幂算一下
7 回复 分享
发布于 2023-04-19 21:13 北京
还得是你呀!阿盛哥
2 回复 分享
发布于 2023-04-19 21:13 四川
大哥🐮
2 回复 分享
发布于 2023-04-19 21:09 浙江
楼主能说下第一题思路吗?没看太懂为什么第15行压入的是left指针指向的值
1 回复 分享
发布于 2023-04-19 21:59 广东
盛哥🐮
1 回复 分享
发布于 2023-04-19 21:15 湖北
大🐂子
点赞 回复 分享
发布于 2023-04-20 21:22 重庆
盛哥🐮
点赞 回复 分享
发布于 2023-04-20 20:19 浙江
阿里数字供应链部门刚开始春招,欢迎同学踊跃报表。查看个人首页帖子 查看部门介绍和扫码线上投递简历。 https://www.nowcoder.com/discuss/472422701500485632
点赞 回复 分享
发布于 2023-04-20 15:15 浙江
大佬啥部门?
点赞 回复 分享
发布于 2023-04-19 23:06 北京
大佬牛逼
点赞 回复 分享
发布于 2023-04-19 22:17 江苏

相关推荐

2025-12-12 19:01
南京航空航天大学 C++
秋招没咋投,准备&nbsp;wxg&nbsp;转正之后摆烂了。结果不堪字节&nbsp;HR&nbsp;的骚扰还是面了一下字节。之前想去字节的时候怎么面都挂。现在想着随便面一下结果三面技术面都意外顺利还有加面。十月中旬字节发了意向,wxg&nbsp;转正结果无响应。十月底字节拉了保温群,wxg&nbsp;口头通过,系统显示考核中。十一月初和字节&nbsp;ld&nbsp;交流之后得知&nbsp;base&nbsp;居然能选海外,甚至能小&nbsp;wlb&nbsp;一下,wxg&nbsp;无响应无人联系。十一月中旬把字节&nbsp;base&nbsp;转到了海外,wxg&nbsp;流程灰了,一问超时忘处理了,过两天又变考核中了。十一月下旬字节换了海外&nbsp;HR&nbsp;对接,问了期望薪资,wxg&nbsp;考核终于显示通过,无&nbsp;HR&nbsp;保温,无其他保温。十一月底给字节报了个天价,想吓吓他们,同时告诉微信字节要开了,微信无响应。同样十一月底字节&nbsp;HR&nbsp;告诉我确实给不到那么高,但是能拿期权补上,问能不能接受。微信无响应。同样十一月底字节&nbsp;HR&nbsp;告知了具体方案,符合预期。&nbsp;微信无响应。十二月上旬催&nbsp;wxg&nbsp;不开我就盲拒了,wxg&nbsp;HR&nbsp;火急火燎的打电话问情况,问期望。我给了一个不算夸张的总包数字,因为今年市场在涨,过了三天还不联系我,我再催,约时间下午打电话,非得在我给出的数字上压下去几万,微信又不差这点,为什么不能满足我,让我没有拒绝的理由呢?一番纠结抗争,求稳还是追求挑战,最终选择接受迎接新的挑战,因为堂吉诃德永远不会停下脚步!回想起来,在&nbsp;wxg&nbsp;谈薪的阶段,我认为并没有给予我一定的重视,即使&nbsp;HR&nbsp;表示我在实习期间的表现和之前的面评都很靠前。也没有感觉到想要争取我,虽然我表示拒了&nbsp;offer&nbsp;之后要给我加面委定&nbsp;t6&nbsp;再涨,但我三个月没面试让我面面委那就是白给,还是算了。有缘再见了我亲爱的&nbsp;wxg,再见了曾经的梦中情厂,再见亲爱的&nbsp;mt,再见亲爱的朋友们。也再见,北京的一切。我想润了。秋招结束,卸载牛客,下一个三年,下一个五年,下一个十年后再来看看。
面试中的大熊猫爱吃薯...:我嫉妒得狗眼通红
点赞 评论 收藏
分享
2025-11-28 11:13
门头沟学院 游戏策划
真顶不住了兄弟们…11&nbsp;月底了,秋招投了仨月,还是&nbsp;0offer,纯纯陪跑选手。从&nbsp;8&nbsp;月底就开始瞎忙活,前俩月还会为了面试挂掉崩溃到睡不着,现在心里早就没波澜了,跟一潭死水似的。不知道从啥时候起,也不焦虑了,就剩摆烂和逃避现实&nbsp;——&nbsp;简历不想改,面试题不想刷,连打开招聘软件的劲儿都没了。中间撑着我往下走的,其实是那点自我安慰:每次收到面试邀约,都告诉自己&nbsp;“挂了也没事,就当练手”,好歹能趁着准备的功夫捋捋项目逻辑,优化下面试话术,只要有进步,总能撞上一个机会。说实话也确实有点变化,从一开始一面就凉,到后来能冲进二面、三面,我还以为事情在往好的方向走…&nbsp;结果后面零星几个面试,又是一面挂、二面挂,无限循环。原来我以为的&nbsp;“进步”,根本就是自我感动的幻觉,说白了就是原地踏步。我到底收获啥了?面试还是那么拉胯,花了无数时间准备材料、练话术、做&nbsp;PPT,到最后连展示的机会都没有,每次都是不明不白被拒,纯属瞎忙活。现在彻底没面试邀约了,希望没了,动力也泄了,只剩下迷茫、麻木,还有点面试&nbsp;PTSD——&nbsp;一想到要面试就犯怵。我承认自己可能不够努力,但每次有机会的时候,我是真的拼尽全力去准备了啊。我还想再挣扎一下,还不想就这么放弃,但现在是真的没头绪了…&nbsp;到底还能做点啥,才能把这秋招的烂摊子盘活啊?
牛客77447303...:老哥没事,我去年双非硕没找到,今年毕业后这个月才接着找,半个月就找到了,给我的感觉就是企业都是需要尽快入职的(至少小企业是这样)。所以不要慌,毕业后社招也许能更快找到工作。
十一月总结
点赞 评论 收藏
分享
评论
15
32
分享

创作者周榜

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