A5429 | 岛屿战争
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
有 $N$ 个岛屿按东西方向一字排开,岛屿之间有 $N-1$ 座桥。
第 $i$ 座桥连接着从西往东数第 $i$ 个岛和第 $i+1$ 个岛。
某天,岛屿之间发生了争端,岛民们提出了 $M$ 个请求。
第 $i$ 个请求:由于从西往东数第 $a_i$ 个岛和第 $b_i$ 个岛之间发生了争端,希望让这两个岛无法通过桥相互往来。
你可以通过拆除一些桥来满足所有 $M$ 个请求。
请你求出最少需要拆除多少座桥,才能满足所有请求。
第 $i$ 座桥连接着从西往东数第 $i$ 个岛和第 $i+1$ 个岛。
某天,岛屿之间发生了争端,岛民们提出了 $M$ 个请求。
第 $i$ 个请求:由于从西往东数第 $a_i$ 个岛和第 $b_i$ 个岛之间发生了争端,希望让这两个岛无法通过桥相互往来。
你可以通过拆除一些桥来满足所有 $M$ 个请求。
请你求出最少需要拆除多少座桥,才能满足所有请求。
输入格式
$N$ $M$
$a_1$ $b_1$
$a_2$ $b_2$
$\vdots$
$a_M$ $b_M$
$a_1$ $b_1$
$a_2$ $b_2$
$\vdots$
$a_M$ $b_M$
输出格式
输出需要拆除的最少桥的数量。
输入输出样例
输入 #1
5 2 1 4 2 5
输出 #1
1
输入 #2
9 5 1 8 2 7 3 5 4 6 7 9
输出 #2
2
输入 #3
5 10 1 2 1 3 1 4 1 5 2 3 2 4 2 5 3 4 3 5 4 5
输出 #3
4
### 限制条件
- 所有输入均为整数。
- $2 \leq N \leq 10^5$
- $1 \leq M \leq 10^5$
- $1 \leq a_i < b_i \leq N$
- 每组 $(a_i, b_i)$ 均互不相同。
### 样例解释 1
只需拆除连接从西往东数第 $2$ 个岛和第 $3$ 个岛的桥即可满足所有请求。
- 所有输入均为整数。
- $2 \leq N \leq 10^5$
- $1 \leq M \leq 10^5$
- $1 \leq a_i < b_i \leq N$
- 每组 $(a_i, b_i)$ 均互不相同。
### 样例解释 1
只需拆除连接从西往东数第 $2$ 个岛和第 $3$ 个岛的桥即可满足所有请求。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?