首页 > 其他分享 >九 1343. 挤牛奶 (区间合并)

九 1343. 挤牛奶 (区间合并)

时间:2024-03-25 21:11:43浏览次数:18  
标签:right 牛奶 nextInt int 1343 合并 区间 sc

1343. 挤牛奶 (区间合并)
image

思路:将挤奶时间段按开始时间重新排序,然后合并区间右侧和下一区间左侧重合的区间,当不重合时,计算最长连续挤奶时间以及最长连续无人挤奶时间。

import java.util.*;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[][] a = new int[n][2];
        IntStream.range(0, n).forEach(i -> {
            int left = sc.nextInt();
            a[i][0] = left;
            int right = sc.nextInt();
            a[i][1] = right;
        });
        int res1 = 0, res2 = 0;
        Arrays.sort(a, Comparator.comparingInt(item -> item[0]));
        int left = a[0][0];
        int right = a[0][1];
        for (int i = 1; i < n; i++) {
            if (a[i][0] <= right) {
                right = Math.max(right, a[i][1]);
            }
            else {
                res1 = Math.max(res1, right - left);
                res2 = Math.max(res2, a[i][0] - right);
                left = a[i][0];
                right = a[i][1];
            }
        }
        res1 = Math.max(res1, right - left);
        System.out.println(res1 + " " + res2);
    }
}

标签:right,牛奶,nextInt,int,1343,合并,区间,sc
From: https://www.cnblogs.com/he0707/p/18095360/lanqiaobei09

相关文章

  • 数据分析-Pandas类别数据序列合并
    数据分析-Pandas类别数据序列合并数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律?数据表,时间序列数据在数据分析建模中很常见,例如天气预报,空气状态监测,股票交易等金融场景。数据分析过......
  • JAVA 使用POI实现单元格行合并
    POI实现单元格行合并实现效果引入jar代码实现controller层Service层ServiceImpl层实现类实现效果如果最后面的三行数据大于1时那么前面十二行就需要行合并引入jar<dependency><groupId>org.apache.poi</groupId><artifactId......
  • ASP.NET Core 切分、合并 PDF
    继续使用DocNET:https://github.com/GowenGit/docnetNuget:Install-PackageDocnet.Core切分PDF注意,DocNET的Split方法的索引是从0开始的,所以我们认为的获取PDF的第三到第五页,在DocNET的Split方法其实是从第二到第四页…publicstaticboolSplitPdf(string......
  • ElementUI的Table控件,合并列
    x//计算需要合并的列for(letk=0;k<that.tableData.length;k++){//判断当前类型是否与下一个类型一致,一致则两个单元格合并。if((k+1)<that.tableData.length&&......
  • Python+openpyxl 拆分Excel合并的单元格
    图片数据是举例子。在实际使用中,从需求网页上下载的生产资料是带有合并单元格的,但在处理的时候需要拆分开,不然不好操作。使用openpyxl可以实现操作如果没有安装openpyxl库,首先安装openpyxl在命令行执行pipinstallopenpyxl点击查看代码importopenpyxlpath=r"test.......
  • git合并分支
    前言  多人协作开发的时候,需要对项目代码做版本管理。大家做新版本的开发,需要基于上一个版本新建一个自己的开发分支,自己开发分支的程序测试通过后,就要合到线上的分支以供发版,在合并分支的时候可能会有冲突,那么需要解决冲突后提交合并的代码。本篇教程主要讲解使用gitmerge来......
  • P9746 「KDOI-06-S」合并序列
    P9746「KDOI-06-S」合并序列经典区间dp+预处理不难设计状态\(f_{l,r}\)表示\([l,r]\)能否变为一个数,转移也简单,枚举三个区间,满足\(f_{i,a}=f_{b,c}=f_{d,r}=1\)且异或和为\(0\)。复杂度为\(O(n^6)\)。设异或和为\(s_{l,r}\)。考虑优化,瓶颈在于转移需要枚举三个区间......
  • python合并多个csv文件需要注意的问题(合并多个列名问题)
    问题描述起初我使用python语言合并多个csv文件时,存在这几个csv文件有不止一个列名相同,仅仅依靠一个列名内容进行合并;就很容易造成相同列名对应相同内容分别占据了两个列,感官极为不好,还会影响到后面的数据清洗;问题解决#在on的这里加一个中括号,这样就能够同时包括多个列名,依据......
  • git分支 合并问题
    如果你目前在 dev_a 分支上有未提交的代码,而想要从 develop 分支创建一个名为 dev_b 的新分支,并将 dev_a 分支上的未提交更改应用到了 dev_b 分支上。可以按照以下步骤操作:保存当前工作进度:如果你有未提交的更改,首先需要保存当前工作进度。你可以使用以下命令暂存更......
  • 如何回退已经合并的master代码?
    如何回退已经合并的master代码?在CodeUp(一个代码托管平台,类似于GitLab、GitHub等)上撤销已经合并到master分支的提交,你需要遵循以下基本步骤:回滚master分支:如果你想要撤销整个合并操作并恢复到合并前的状态,你可以执行一个反向合并(revertmerge)。在Git中,这通常通过创建一个新......