#P0566. 杰拉德与巨型棋盘(Gerald and Giant Chess)

杰拉德与巨型棋盘(Gerald and Giant Chess)

题目描述

杰拉德有一个 h×wh\times w 的棋盘,行从上到下编号为 11hh,列从左到右编号为 11ww

棋盘上有 nn 个黑格,其余格子为白格。一个棋子从左上角 (1,1)(1,1) 出发,要走到右下角 (h,w)(h,w)。每一步只能向下走一格或向右走一格,且不能走到黑格上。

请计算从 (1,1)(1,1)(h,w)(h,w) 的合法走法数量。

输入格式

第一行三个整数 h,w,nh,w,n,表示棋盘大小和黑格数量。

接下来 nn 行,每行两个整数 ri,cir_i,c_i,表示一个黑格所在的行和列。

输出格式

输出一个整数,表示合法走法数量对 109+710^9+7 取模后的结果。

样例

3 4 2
2 2
2 3
2
100 100 3
15 16
16 15
99 88
545732279

数据范围

1h,w1051\le h,w\le10^51n20001\le n\le20001rih1\le r_i\le h1ciw1\le c_i\le w

保证左上角和右下角都是白格,且所有给出的黑格互不相同。