20220919迅雷笔试(数开)

20220919迅雷笔试

写在前面:题量蛮大的,一个半小时,20道单选、10道多选、3道编程,在这里记录下吧

编程题

1.字典树的题,时间不咋够,暴力写得,过80,最后没时间改了,原题连接在此电话列表不再赘述

2.前缀数组的一个题,dp组成前缀数组,然后双重循环过得,源码如下-->大意就是说给你一个数组,要分成三片,这三片要符合(第一片的和<=第二片的和<=第三片的和)

import java.util.*;

public class Main4 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        ArrayList<Integer> list = new ArrayList<>();
        while(sc.hasNext()){
            list.add(sc.nextInt());
        }
        Integer[] data = new Integer[list.size()];
        data = list.toArray(data);
//        int[] data = new int[]{1,2,2,2,5,0};
        int[] dp = new int[data.length];
        dp[0] = data[0];
        for(int i = 1;i<dp.length;++i){
            dp[i] = data[i]+dp[i-1];//获取前缀数组
        }
        int res = 0;
        for(int i = 0;i<data.length;++i){
            for(int j = i+1;j<data.length;++j){
                if(dp[i]<=dp[j]-dp[i]&&dp[j]-dp[i]<=dp[data.length-1]-dp[j]) {
                    ++res;
                }
            }
        }
        System.out.println(res);
    }
}

3.力扣2139-->得到目标值的最少行动次数,先是用贪心(先乘后加)尝试,过28,后改变策略,只在偶数上贪心,奇数需要先行变成偶数(反向思维-->原题可以变为“如何用最少的操作次数将target转化为1”),过了,源码在此

import java.util.Scanner;

public class Main5 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String seq = sc.next();
        String[] segs = seq.split(",");
        int target = Integer.parseInt(segs[0]);
        int maxDoubles = Integer.parseInt(segs[1]);
        int count = 0;
        while(target>1){
            if(target%2==1){
                --target;
                ++count;
            }
            if(maxDoubles!=0){
                target /= 2;
                --maxDoubles;
                ++count;
            }
            if(maxDoubles==0){
                count = count+target-1;
                target = 1;
            }
        }
        System.out.println(count);

    }

}

以上
希望对大家有所帮助

#迅雷##迅雷秋招##迅雷2022校招##做完迅雷23秋招笔试,人要没了#
全部评论
迅雷约面试了吗
点赞 回复 分享
发布于 2022-09-28 20:07 辽宁
200分能进入下一轮吗?
点赞 回复 分享
发布于 2022-09-20 13:22 四川
还好吧,写完还有40分钟。
点赞 回复 分享
发布于 2022-09-19 23:15 广东
第二道题没时间写了,人麻了。。
点赞 回复 分享
发布于 2022-09-19 21:41 湖北
题量是真的大
点赞 回复 分享
发布于 2022-09-19 21:17 湖北

相关推荐

Lorn的意义:你这标个前端是想找全栈吗?而且项目确实没什么含金量,技术栈太少了,边沉淀边找吧 现在学院本想就业好一点四年至少得高三模式两年加油吧
点赞 评论 收藏
分享
头顶尖尖的程序员:我是26届的不太懂,25届不应该是找的正式工作吗?为什么还在找实习?大四还实习的话是为了能转正的的岗位吗
点赞 评论 收藏
分享
评论
9
8
分享

创作者周榜

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