题目提供者 洛谷
# 路径计数2
## 题目描述
一个$N \times N$的网格,你一开始在$(1,1)$,即左上角。每次只能移动到下方相邻的格子或者右方相邻的格子,问到达$(N,N)$,即右下角有多少种方法。
但是这个问题太简单了,所以现在有$M$个格子上有障碍,即不能走到这$M$个格子上。
## 输入格式
输入文件第$1$行包含两个非负整数$N,M$,表示了网格的边长与障碍数。
接下来$M$行,每行两个不大于$N$的正整数$x, y$。表示坐标$(x, y)$上有障碍不能通过,且有$1≤x, y≤n$,且$x, y$至少有一个大于$1$,并请注意障碍坐标有可能相同。
## 输出格式
一个非负整数,为答案$ \bmod 100003$后的结果。
## 样例 #1
### 样例输入 #1
```
3 1
3 1
```
### 样例输出 #1
```
5
```
## 提示
对于$20\%$的数据,有$N≤3$;
对于$40\%$的数据,有$N≤100$;
对于$40\%$的数据,有$M=0$;
对于$100\%$的数据,有$N≤1000,M≤100000$。
#include<iostream>
#include<cstdio>
using namespace std;
int