火锅问题

  • 入职后,导师会请你吃饭,你选择了火锅。
  • 火锅里会在不同时间下很多菜。
  • 不同食材要煮不同的时间,才能变得刚好合适。你希望吃到最多的刚好合适的菜,但你的手速不够快,
  • 用m代表手速,每次下手捞菜后至少要过m秒才能在捞(每次只能捞一个)。
  • 那么用最合理的策略,最多能吃到多少刚好合适的菜?
  • 输入描述:
  • 第一行两个整数n,m,其中n代表往锅里下的菜的个数,m代表手速。
  • 接下来有n行,每行有两个数x,y代表第x秒下的菜过y秒才能变得刚好合适。
  • (1 < n, m < 1000)
  • (1 < x, y < 1000)
  • 输出描述:
  • 输出一个整数代表用最合理的策略,最多能吃到刚好合适的菜的数量
import java.util.Arrays;
public class Question42 {
    public static void main(String[] args) {
        int[][] arr = new int[][]{{1, 2}, {2, 1}};
        answer(arr, 1);
    }
    /**
     * 分析:准备好时,如果当前的菜已经熟了,则等待下一个,如果刚好熟了或者还没熟,则等待现在的菜
     * @param arr 所有的菜煮熟的时间
     * @param m 手速
     */
    public static void answer(int[][] arr, int m){
        //定义一个数组,
        int[] timeAndReady = new int[arr.length];
        for (int i = 0; i < arr.length; i++) {
            timeAndReady[i] = arr[i][0] + arr[i][1];
        }
        Arrays.sort(timeAndReady);
        int count = 0;
        int timeCount = 0;
        for (int i = 0; i < arr.length; i++) {
            if (m <= timeAndReady[i] - timeCount){
                count++;
                timeCount = timeAndReady[i];
            }
        }
        System.out.println(count);
    }
}

全部评论
做个题都要恶心我一下是吧
25 回复
分享
发布于 2022-12-04 12:27 四川
这么吃火锅你导师知道么
9 回复
分享
发布于 2022-12-05 00:53 江苏
阿里巴巴
校招火热招聘中
官网直投
乌鸦哥在哪
4 回复
分享
发布于 2022-12-07 14:35 江苏
***的 我不吃了
3 回复
分享
发布于 2022-12-06 16:36 四川
爱吃不吃
2 回复
分享
发布于 2022-12-06 13:04 湖南
我不选择火锅,我选择外卖
1 回复
分享
发布于 2022-12-21 17:04 河南
首先,我导师不会请我吃火锅
1 回复
分享
发布于 2022-12-28 22:06 湖北
决定不吃了
点赞 回复
分享
发布于 2022-12-08 20:26 北京
选择不吃
点赞 回复
分享
发布于 2023-01-27 18:57 河北
这个火锅我不配吃
点赞 回复
分享
发布于 2023-02-01 15:17 广东

相关推荐

13 15 评论
分享
牛客网
牛客企业服务