Acwing.908 最大不相交区间数量(贪心)

news2024/10/7 20:28:42

题目

给定N个闭区间[ai,bi],请你在数轴上选择若干区间,使得选中的区间之间互不相交(包括端点)。输出可选取区间的最大数量。

输入格式

第一行包含整数N,表示区间数。
接下来N行,每行包含两个整数ai , bi,表示—个区间的两个端点。

输出格式

输出一个整数,表示可选取区间的最大数量。
数据范围
1≤N ≤105,
-109≤a≤bi≤109

  • 输入样例:
3
-1 1
2 4
3 5
  • 输出样例:
2

题解

import javafx.util.Pair;

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

/**
 * @author akuya
 * @create 2023-07-18-17:57
 */
public class MaxNonIntersect {
    static int N=10010;
    static int n;
    static int r=0;
    static int ans=1;
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        n=scanner.nextInt();
        Pair<Integer,Integer> p[]=new Pair[N];
        for(int i=0;i<n;i++){
            int a=scanner.nextInt();
            int b=scanner.nextInt();
            p[i]=new Pair<>(a,b);
        }

        Arrays.sort(p,0,n, new Comparator<Pair<Integer, Integer>>() {
            @Override
            public int compare(Pair<Integer, Integer> o1, Pair<Integer, Integer> o2) {
                return o1.getValue()-o2.getValue();
            }
        });

        r=p[0].getValue();
        for(int i=1;i<n;i++){
            if(p[i].getKey()<r){
                continue;
            }
            r=p[i].getValue();
            ans++;
        }

        System.out.println(ans);
    }
}

思路

贪心思路具体如图,证明就不解释了。代码与上一道题完全一直可参考
https://blog.csdn.net/qq_62235017/article/details/131679015
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/767505.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【基于 GitLab 的 CI/CD 实践】03、GitLab Pipeline 实践(上)

目录 一、GitLab Pipeline 流水线语法有哪些&#xff1f;流水线参数列表 如何检查语法错误&#xff1f;流水线语法检测 二、Pipeline 基础语法 job script before_script after_script stages 未定义 stages ​定义 stages 控制 stage 运行顺序 .pre & .post …

2010年中国生态系统服务空间数据集

摘要 生态系统服务是生态系统形成并维持的人类赖以生存和发展的环境条件与效用&#xff0c;是测度自然生态系统保护价值的重要指标。采用科学方法模拟生态系统服务的空间分布对掌握当前我国生态本底状况&#xff0c;识别生态保护重要区&#xff0c;从而有效支持生态管理决策具…

关于金融英语的翻译技巧,你了解多少呢

据了解&#xff0c;金融英语除了具备通用英语特点之外 &#xff0c;还具备自己独特的特征&#xff0c;如专有名词多、专业术语量大、专业缩略词等。为了确保译文的准确性&#xff0c;翻译金融英语时要注意以下几点技巧。 一、专业术语坚持直译。金融翻译中涉及大量金融英语特有…

day10_practice

用面向对象思想实现数据分析 1、设计类&#xff0c;完成数据封装 2、设计抽象类&#xff0c;定义文件读取相关功能&#xff0c;使用子类实现具体功能(由于两份文件格式不同) 3、读取文件&#xff0c;产生数据对象 4、计算每天销售额 5、绘图 一、数据封装类设计 ""…

Python读取骑行fit文件

目录 故事背景安装输出有心率和无心率的数据为NO.fit文件增加心率数据并保存参考文献 故事背景 有一天&#xff0c;我使用wahoo码表骑行记录了一段没有心率带的数据&#xff0c;导出fit文件至电脑。上传至捷安特APP&#xff0c;结果说数据不完整&#xff0c;此时想用代码把心率…

以结果为导向的网络安全需要全面的方法

Positive Technologies 信息安全分析师 Fedor Chunizhekov 谈论了该地区不断变化的网络安全形势&#xff0c;并重点介绍了其 "中东网络安全威胁形势 "报告中影响中东地区的要点。他还强调&#xff0c;为了解决核心安全问题&#xff0c;我们需要采用一种全面的方法来实…

安全性测试的测试点

安全性测试的测试点 1.跨网站脚本攻击 通过脚本语言的缺陷模拟合法用户&#xff0c;控制其账户&#xff0c;盗窃敏感数据 2.注入攻击 通过构造查询对数据库、LDAP和其他系统进行非法查询 3.恶意文件执行 在服务器上执行Shell 命令Execute&#xff0c;获取控制权 4.伪造跨…

企业如何选择通配符SSL证书?

很多企业网站因为业务需要&#xff0c;在同一个主域名下通常会有多个子域名。在这种情况下申请SSL证书就要很慎重&#xff0c;既要考虑到网站安全需要&#xff0c;又要考虑经济实惠。因此 OV 型的通配符证书非常适合这类企业网站。 为什么要选择通配符SSL证书&#xff1f; 通…

(Linux)查看端口占用并关闭进程

端口 查看端口占用 查看端口占用netstat -anp | grep 端口号 → 列出所有端口netstat -tunlp |grep 3306 → 端口号netstat -tunlp |grep mysql → 进程名称netstat -tunlp |grep 29520 → 进程IDnetstat -tunlp | grep 3306-t: 显示 TCP 连接-u: 显示 UDP 连接-n: 显示数字…

(linux) 查看日志文件

工作用常用 服务器查看日志cat opt/service/logs/logfile.log查看 logfile.log 日志文件tail -f -n -500 opt/service/logs/logfile.log动态查看日志vim opt/service/logs/file.logvi opt/service/logs/file.log可以快速查看日志第一行cat opt/service/logs/logfile.log | gre…

idea 自定义类注释模板和方法模板,无警告

背景&#xff1a;idea&#xff1a;IntelliJ IDEA 2023.1.3 (Ultimate Edition) 效果&#xff1a;&#xff08;主要是没无参&#xff0c;不会换行&#xff09; 类&#xff1a; /** * author sss* date ${DATE} on ${TIME}* desc $NAME*/# 完全复制上面的&#xff0c;删除这一行…

grpc --- protoc生成的pb.go文件的位置

目录 一、环境相关版本二、go_package配置为当前目录下三、go_package配置为指定目录四、结论 一、环境相关版本 go v1.20.5 protoc v4.24.0 protoc-gen-go v1.26.0protoc-gen-go版本过高时需要指定包名&#xff0c;即go_package 二、go_package配置为…

JMeter:性能测试和压力测试工具

JMeter简介 JMeter时Apache下基于java的一款性能测试和压力测试工具。它基于Java开发&#xff0c;可对HTTP服务器华人FTP服务器&#xff0c;甚至是数据库进行压力测试。作为一款专业的压测工具&#xff0c;JMeter功能强大&#xff0c;本片文章中仅简单介绍与本次压测相关的内容…

【Ceph集群应用】CephFS文件系统之MDS接口详解

CephFS文件系统之MDS接口详解 1.创建CephFS文件系统MDS接口1.1 创建cephfs1.2 基于内核的客户端挂载1.3 基于fuse工具方式的客户端挂载 接上文基于ceph-deploy部署Ceph集群详解 1.创建CephFS文件系统MDS接口 服务端操作 &#xff08;1&#xff09;在admin管理节点创建mds服务…

【LocalSend】开源跨平台的局域网文件传输工具,支持IOS、Android、Mac、Windows、Linux

工作前提条件&#xff1a;设备使用相同的局域网。 LocalSend is a cross-platform app that enables secure communication between devices using a REST API and HTTPS encryption. Unlike other messaging apps that rely on external servers, LocalSend doesn’t require …

Spring核心和设计思想(1)

1.Spring是什么&#xff1f; 我们通常说的Spring指的是Spring FrameWork&#xff08;Spring 框架&#xff09;&#xff0c;它是一个开源框架&#xff0c;有着活跃而庞大的社区&#xff0c;这就是它长久不衰的原因。Spring支持广泛的应用场景&#xff0c;它让Java企业级的应用程…

SUNSET_DECOY靶机详解

SUNSET_DECOY靶机复盘 这个靶机还是有点难度的&#xff0c;尤其在提权时候&#xff0c;毫无思路。 下载地址&#xff1a;https://download.vulnhub.com/sunset/decoy.ova 首先扫描IP&#xff0c;打开网站&#xff0c;这个靶机我是没有扫描目录的&#xff0c;因为没给我机会扫…

3组6通道DRP通道USB PD3.1控制SOC芯片LDR6020P

前言 2021年5月&#xff0c;USB-IF 协会发布了全新的USB PD3.1规范&#xff0c;该规范将快充功率上限从100 W提升至240 W&#xff0c;充电功率的提升也让USB PD的应用从手机、笔记本电脑&#xff0c;扩展到便携式设备、物联网设备、智能家居、通信和安防设备、汽车和医疗等领域…

小研究 - 面向 Java 的高对抗内存型 Webshell 检测技术(三)

由于 Web 应用程序的复杂性和重要性, 导致其成为网络攻击的主要目标之一。攻击者在入侵一个网站后, 通常会植入一个 Webshell, 来持久化控制网站。但随着攻防双方的博弈, 各种检测技术、终端安全产品被广泛应用, 使得传统的以文件形式驻留的 Webshell 越来越容易被检测到, 内存…

浅谈一下自动化运维优点和缺点,哪款工具好?

面对越来越复杂的业务&#xff0c;以及越来越多样化的用户需求&#xff0c;IT运维的要求也越来越高&#xff0c;IT运维人员工作也越来越繁琐复杂&#xff0c;因此如何又快又安全的保障IT服务是重中之重。这个时候就需要用到自动化运维了。今天我们就来一起简单聊聊什么是自动化…