小米笔试杀疯了

算法题不💊折磨我哇#小米求职进展汇总#
全部评论
就a了个第一题 思路基本是用一个数组记录给的数组每两天之间的 天数差再-1 然后k-n 为余量天数 把差值数组排序后 遍历 值小于余量天数就减掉 不小于的用cnt记一个数 最后输出2+cnt*2
3 回复 分享
发布于 03-12 20:40 天津
第一题试出来一个过了0.27
点赞 回复 分享
发布于 03-12 20:31 黑龙江
mad,第二题给我递归半天,以为数据量就200不会爆
点赞 回复 分享
发布于 03-12 20:41 北京
多少分能过啊)我只有第二题对了,,
点赞 回复 分享
发布于 03-12 20:41 上海
两题过了180%,第一题就是块问题,贪心策略优先填补较小的间隔,使最终的块数最少,第二题是一个dp,但是dp里面是一个结构体,价格,载人,货物这样
点赞 回复 分享
发布于 03-12 21:42 上海
a一个给面试了吗
点赞 回复 分享
发布于 03-18 16:34 辽宁

相关推荐

03-12 20:38
湖南科技大学
2025届春招笔试题1-软件开发方向 编程第一题```import java.util.ArrayList;import java.util.Comparator;import java.util.List;import java.util.Scanner;/***  @author Hertz*  @date 2025.3.12* */public class Main {    public static void main(String[] args) {        //接收操作        int ans=0;        Scanner sc=new Scanner(System.in);        int n=sc.nextInt();        int k=sc.nextInt();        k=k-n;//记录除去好日子剩下的天数        ans=n*2;        int []date=new int[n];        for(int i=0;i<n;i++){            date[i]=sc.nextInt();        }        //记录好日子之间相隔的天数        List<Integer> list=new ArrayList<>();        for(int i=1;i<n;i++){                list.add(date[i]-date[i-1]-1);        }        list.sort(new Comparator<Integer>() {   //对记录进行由小到大的排列            @Override            public int compare(Integer o1, Integer o2) {                return o1-o2;            }        });        int j=0;        //判断剩下天数是否足以度过相隔的天数        while(j<list.size()&&k>=list.get(j)){            k-=list.get(j);            j++;            ans-=2;        }        System.out.println(ans);    }}```纯蒻苟,大佬勿喷#小米##春招##小米笔试#
投递小米集团等公司10个岗位
点赞 评论 收藏
分享
评论
2
1
分享

创作者周榜

更多
牛客网
牛客企业服务