[ICPC2014 WF] Surveillance

题意翻译

### 题目描述 给定一个长度为 $n$ 的环,有 $k$ 个区域被覆盖,求最小的满足环被完全覆盖的区域数量。 ### 输入格式 第一行两个整数 $n$,$k$。 接下来 $k$ 行,每行两个整数表示一个区域。 ### 输出格式 若环不可能被完全覆盖,输出 `impossible`;否则输出一个整数,表示最少的区域数量。

题目描述

The International Corporation for Protection and Control (ICPC) develops efficient technology for, well, protection and control. Naturally, they are keen to have their own headquarters protected and controlled. Viewed from above, the headquarters building has the shape of a convex polygon. There are several suitable places around it where cameras can be installed to monitor the building. Each camera covers a certain range of the polygon sides (building walls), depending on its position. ICPC wants to minimize the number of cameras needed to cover the whole building.

输入输出格式

输入格式


The input consists of a single test case. Its first line contains two integers $n$ and $k$ ($3 \le n \le 10^6$ and $1 \le k \le 10^6$), where $n$ is the number of walls and $k$ is the number of possible places for installing cameras. Each of the remaining $k$ lines contains two integers $a_ i$ and $b_ i$ ($1 \le a_ i, b_ i \le n$). These integers specify which walls a camera at the $i^{th}$ place would cover. If $a_ i \le b_ i$ then the camera covers each wall $j$ such that $a_ i \le j \le b_ i$. If $a_ i > b_ i$ then the camera covers each wall $j$ such that $a_ i \le j \le n$ or $1 \le j \le b_ i$.

输出格式


Display the minimal number of cameras that suffice to cover each wall of the building. The ranges covered by two cameras may overlap. If the building cannot be covered, display impossible instead.

输入输出样例

输入样例 #1

100 7
1 50
50 70
70 90
90 40
20 60
60 80
80 20

输出样例 #1

3

输入样例 #2

8 2
8 3
5 7

输出样例 #2

impossible

输入样例 #3

8 2
8 4
5 7

输出样例 #3

2

说明

Time limit: 4000 ms, Memory limit: 1048576 kB. International Collegiate Programming Contest (ACM-ICPC) World Finals 2014