哔哩哔哩 bilibili b站 4-19测开笔试答案

1 模拟

题意得小于10的都不行,然后1234都要一个

然后每次-4就行,因为-4后小于0的话,那么选别的也是算一次

然后发现超时,然后就骗测试样例了,每次都出4 10倍10倍的增加

 public int[] minimumNumber(int[] target) {
        int len = target.length;
        int[] ans = new int[len];
        for (int i = 0; i < len; i++) {
            if (target[i] < 10) {
                ans[i] = -1;
            } else {
                int val = target[i] - 10;
                int count = 4;

                while (val > 40000) {
                    val -= 40000;
                    count += 10000;
                }
                while (val > 4000) {
                    val -= 4000;
                    count += 1000;
                }
                while (val > 400) {
                    val -= 400;
                    count += 100;
                }
                while (val > 40) {
                    val -= 40;
                    count += 10;
                }
                while (val > 8) {
                    val -= 8;
                    count += 2;
                }
                while (val > 0) {
                    val -= 4;
                    count++;
                }
                ans[i] = count;
            }
        }
        return ans;
    }

2 停车

直接哈希存起来,然后有车出就删除,比较简单

public int parkingCapacity(int[] In, int[] Out) {
//        LinkedList<Integer> list = new LinkedList<>();
        int max = 0;
        int index = 0;
        HashSet<Integer> set = new HashSet<>();
        for (int i : In) {
            set.add(i);
            max = Math.max(max, set.size());
            while (!set.isEmpty() && set.contains(Out[index])) {
                set.remove(Out[index]);
                index++;
            }
        }
        return max;
    }

3 运算题,也比较简单吧,纯模拟,没隔壁那种手写计算器恶心

 public long calculate(String formula) {
        char[] cs = formula.toCharArray();
        int len = cs.length;
        for (int i = 0; i < len; i++) {
            if (Character.isDigit(cs[i])) {
//                数字
                String left = formula.substring(0, i);
                String right = formula.substring(i + 1, len);
                int leftNUM = 0;
                char[] leftCs = left.toCharArray();
                char[] rightCs = right.toCharArray();
//                int leftNum=0;
                String leftstr = "";
                for (int j = 0; j < leftCs.length; j++) {
                    int c2 = (leftCs[j] - 'a');
                    leftstr += String.valueOf(c2);
                }
                String rightStr = "";
                for (int j = 0; j < rightCs.length; j++) {
                    int c2 = (rightCs[j] - 'a');
                    rightStr += String.valueOf(c2);
                }
                System.out.println("rightStr = " + rightStr);
                System.out.println("leftstr = " + leftstr);
                Integer rightInt = Integer.valueOf(rightStr);
                Integer leftInt = Integer.valueOf(leftstr);
//                System.out.println();

                switch (cs[i]) {
                    case '1':
                        return leftInt+rightInt;
                    case '2':
                        return Math.abs(leftInt-rightInt);
                    case '3':
                        return (long) leftInt *rightInt;
                    case '4':
                        if (rightInt==0) return -1;
                        else return leftInt /rightInt;

                }
            }
        }
        // write code here
        return 0;
    }

第一次大厂3道全a,但是选择题没做好,估计机会不大

#技术岗笔试题求解##你的秋招第一场笔试是哪家##bilibili笔试##笔试##bilibili求职进展汇总#
全部评论
你有消息了么,面试什么的
点赞 回复 分享
发布于 04-22 15:42 上海
第一题如果减完10后数大于等于4,可以直接算出目前数是4的多少倍,然后减去这个倍数的4,不用每次10个10个
点赞 回复 分享
发布于 04-19 20:49 山东
楼主有遇到第三题95%的情况吗
点赞 回复 分享
发布于 04-19 20:45 北京

相关推荐

今年的暑期实习转正和秋招已经陆续开始啦,让我回想起自己去年的经历,作为25届B站商业化部门暑期实习转正的校招生,想和大家分享一下我的转正流程和选择关键点。这段经历让我深刻体会到:对实习生而言,一位倾囊相授的mentor和一个包容开放的团队,往往比薪资待遇更重要。希望能给大家一些参考~1、我的背景双9硕,没有大厂的实习经历,项目也大多是本科阶段的课程项目或者实验室项目。刚拿到暑期实习offer的我还是一个只做过课程项目的学生水平,只会用github&nbsp;desktop,连git命令都不会。当我进入b站实习之后,从公司的项目中真的见识到了很多,也学习到了很多。在mentor的带领下,从简单的需求做起,慢慢到可以独立负责一个相对复杂的需求的阶段,这个过程不仅是我专业能力提升的过程,更是我逐渐变得自信从容的过程。通过实习阶段的不断积累,到秋招阶段我已经能够以更轻松的心态去面对面试官,更自如地讲述我的项目和实习经历,更自信地去表达和展现自己,最终收获多个offer。2、B站的mentor真的在和我一起成长!我的部门很强调mentor带教,所以我受到了很全面负责的指导:-&nbsp;在实习期间,我的+1是我的mentor,同时他也给我安排了一个和业务项目相关的负责人作为我的另一个mentor。-&nbsp;业务mentor主要负责带领和指导我做业务需求,在我做需求的过程中遇到了问题,也都会请教他,他会给我耐心的指导,一开始git命令都是他一个词一个词教我的😭-&nbsp;我的+1也会定期和我meeting,关心我最近的情况,如果我有什么困难,他也会和我一起面对。mentor很真诚、很有效地帮助我成功转正-&nbsp;答辩前,我的+1会指点我需要准备的内容,比如答辩内容该从哪些方面展开,并给了我其他同事晋升时的一些优秀资料作为参考,让我在准备转正答辩的时候更有把握。-&nbsp;答辩前,我的+1叫上了同组的同事为我模拟答辩,指出了我在答辩环节的问题,之后的正式答辩中我的mentor也在我旁边陪着我,让我在答辩的时候更有底气,最后就那样超级丝滑地通过了。不仅如此,由于hc充足,同组的另外2位暑期实习生也都转正成功,校招的hc都给了暑期实习生,真的很nice!mentor和我不仅是同事关系,我们像朋友一样相处-&nbsp;我们商业化广告前端组内每天晚上都会一起吃饭,我正式入职之后的新mentor也在其中,在日常中我们会像朋友一样闲聊说笑,大家都没有什么架子,也没有什么勾心斗角(bushi),整体氛围都是轻松融洽的。3、mentor和组内氛围是我选择offer的重要原因我愿意留在B站的最主要的原因,就是我的mentor和组内氛围真的超级好,整体员工都比较年轻化,他们没有架子,超级平易近人,我的问题都能得到他们很热心的解答。对于校招生而言,这真的提供了很好的成长环境。在工作中有问题的话,可以问mentor、可以问+1、可以问其他业务相关的同事,都会得到友好的帮助(当然问问题不要太频繁,也不要问一些在网上一搜就能得到结果的问题)。当然,B站也给到我超出预期的薪资,虽然总被叫小破站,但是真的很大方了!而且,B站的上班时间很灵活,只要保证每天八小时的工作时间即可,有的同事甚至上午十一点多才来上班,对不能早起星人不要太友好!另外,公司的一些文化也很吸引我,比如宠物友好这一点,几乎每个楼栋每一层都有宠物同事一起上班,谁不想和猫猫狗狗一起愉快办公呢!(图&nbsp;1:&nbsp;我们层的绝情猫主子,手感超棒,但能不能摸全看主子心情😭)(图&nbsp;2:&nbsp;我们晚饭小分队部分成员一起参加今年周年庆活动~今年周年庆抽奖,我抽到了旺旺零食超大礼包哈哈✌️)4.&nbsp;真诚建议个人认为,除了薪资水平,务必重点关注:mentor风格:这个其实在面试的时候就可以有初步的感受了,在实习过程中可以更实际地去体会和自己是否契合工作氛围:团队成员是否友好,上下级之间是如何相处的等等,对于刚从象牙塔出来的校招生来说也是蛮重要的对应届生是否友好:我们组目前还没有裁应届生的先例呢成长性:是否能接触到核心业务、团队是否鼓励新技术探索以及优秀同事的晋升速度如何工作强度:工作时间和加班情况等,健康才是第一位的!最后,祝愿大家都能够找到认真负责的mentor和氛围很棒的团队,顺利转正!!!如果有秋招需要内推码的uu,欢迎留言~
我见java多妩媚:我老板画饼说10月中旬转正答辩,直接摆烂。现在每天工作5分钟,八股两小时,酷酷准备秋招
投递哔哩哔哩等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

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