square1001の通学経路 (square1001's School Road)
题意翻译
square1001每天步行到学校。
他住在左下方的十字路口(1,1),去位于右上角(W,H)的学校。
但是,有一些条件。
他为了缩短时间只能往右或上走。 那天,他找了有K个格子,左下角坐标分别为(Xi1,Yi1),(Xi2,Yi2),(Xi3,Yi3)
......(XiK,YiK)
而且,对于这种的格子,其周围的4个格子(指周围四个格子中四个顶点坐标中的一个)中square1001至少需要经过1个。
满足这些条件的路径有多少条?
答案mod 1,000,000,007后输出 。
题目描述
[problemUrl]: https://atcoder.jp/contests/s8pc-1/tasks/s8pc_1_d
square1001は、毎日歩いて中学校まで通っている。
彼は、左下の交差点 $ (1,1) $ に住んでおり、 右上の交差点 $ (W,H) $にある学校まで行く。
ただし、次のような条件がある。
- 彼は時間短縮のために右か上にしか進まない。
- 彼はその日、$ K $ 個のマスに用事があった。
左下 が$ (X_i,Y_i) $ で, 右上が$ (X_i+1,Y_i+1) $ のマスである。 そのため、用事のあるマスそれぞれについて、その周りの交差点4つのうち少なくとも1つは通る必要があった。
それらの条件を満たす行き方は何通りあるか。 $ mod $ $ 1,000,000,007 $で求めよ。
输入输出格式
输入格式
入力は以下の形式で標準入力から与えられる。
> $ H $ $ W $ $ K $ $ X_1 $ $ Y_1 $ $ X_2 $ $ Y_2 $ : : $ X_K $ $ Y_K $
- $ 1 $ 行目には、整数 $ H\ (1≦H≦1,000) $ , $ W(1≦W≦1,000) $ , $ K(1≦K≦200) $が空白区切りで与えられる。
- 次の$ K $ 行には、整数 $ X_i\ (1≦X_i<W) $ , 整数 $ Y_i\ (1≦Y_i<H) $が空白区切りで与えられる。
输出格式
条件を満たす行き方を1行に出力しなさい。
输入输出样例
输入样例 #1
4 4 1
2 2
输出样例 #1
18
输入样例 #2
9 9 3
3 2
4 5
7 7
输出样例 #2
4380
说明
### Sample Explanation 1
!\[\](/img/other/s8pc-1/3D60242BC3594620918CA1044AE12FBE.png) $ (1,1)→(1,2)→(1,3)→(1,4)→(2,4)→(3,4)→(4,4) $という行き方と、 $ (1,1)→(2,1)→(3,1)→(4,1)→(4,2)→(4,3)→(4,4) $という行き方はできない。 よって, $ 20-2=18 $を出力する。 ※図の左上数が抜けていてすみません。