编程题
### 问题描述
小齐处于一个二维网格中,只能朝着坐标轴的正方向(右或上)行走。她起始于点 $(0,0)$,希望能够到达目标点 $(N,N)$。为了帮助她,有 $P$ 个弹簧板分布在网格上。每个弹簧板位于一个固定点 $(x_1, y_1)$,如果小齐使用该板,她将会落在另一个点 $(x_2, y_2)$。
小齐是一头进步的牛,因此她只允许自己向右或向上走,不允许向左或向下。同样,每个弹簧板也被配置为不会朝左或向下弹起。请计算小齐需要行走的最短距离。
### 输入格式
第一行包含两个用空格分隔的整数 $N$ 和 $P$。
接下来的 $P$ 行,每行包含四个整数 $x_1, y_1, x_2, y_2$,其中 $x_1 \leq x_2$,$y_1 \leq y_2$。
所有弹簧板和目标位置坐标都是不同的。
### 输出格式
输出一个整数,表示小齐到达 $(N,N)$ 需要行走的最短距离。
### 样例输入
```
3 2
0 1 0 2
1 2 2 3
```
### 样例输出
```
3
```
### 评测数据规模
$1 \leq N \leq 10^9$。