2025 小米 笔试编程第一题

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()&amp;&amp;k>=list.get(j)){
            k-=list.get(j);
            j++;
            ans-=2;
        }
        System.out.println(ans);
    }
}
```

纯蒻苟,大佬勿喷
#小米##春招##小米笔试#
全部评论
大佬厉害,我看不懂题目,还以为是每次登山不能在峰上超过k天,连个示例解释都没有。
点赞 回复 分享
发布于 03-12 20:47 广东
感觉第一题是个二分答案,动态规划过了45%
点赞 回复 分享
发布于 03-12 20:50 山西
第一题自己太sb了,对list排序写成了reverse,搞到最后都没发现哪里出问题了
点赞 回复 分享
发布于 03-12 20:54 北京
佬,这个第一题你a了?
点赞 回复 分享
发布于 03-12 21:19 山西

相关推荐

03-12 21:00
中山大学 Ruby
点赞 评论 收藏
分享
评论
2
2
分享

创作者周榜

更多
牛客网
牛客企业服务