编程题
### 问题描述
小齐被困在农场的一根栅栏上,栅栏由 $N$ 个垂直排列的柱子组成,编号从 $1$ 到$N$。小齐的位置为 $(bx, by)$,位于这些柱子的右侧。为了防止小齐惹麻烦,农夫决定用一根绳子将小齐绑在栅栏上。这根绳子由 $M$ 个线段组成,起始于小齐的位置,最终也结束于小齐的位置。绳子上的点可能交叉,且多个线段的端点可能重合。
为帮助小齐逃脱,其他牛偷了谷仓里的电锯。请确定需要切断和移除的最小柱子数量,以使小齐能够顺利逃脱,即不会被绳子卡在任何柱子上。
### 输入格式
* 第 $1$ 行: 四个用空格分隔的整数: $N, M, bx, by$。
* 第 $2$ 行至第 $1+$N$ 行: 每行包含柱子 $i$ 的坐标 $(x_i, y_i)$。
* 第 $1+N$ 行至第 $1+N+M$ 行: 每行按顺序包含绳子上的点的坐标 $(x, y)$。第一个点和最后一个点始终与小齐的位置 $(bx, by)$ 相同。
### 输出格式
* 第 $1$ 行: 为使小齐向右逃脱,需要移除的最小柱子数量。
### 样例输入
```
2 10 6 1
2 3
2 1
6 1
2 4
1 1
2 0
3 1
1 3
5 4
3 0
0 1
3 2
6 1
```
### 样例输出
```
1
```
### 评测数据规模
$1 \leq N \leq 10,3 \leq M \leq 10,000,0 \leq bx, by, x_i, y_i \leq 10,000$。