Submit solution

Points: 17 (partial)
Time limit: 1.0s
Memory limit: 256M

Problem types
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, CommonLisp, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, Nim, ObjC, OCaml, Octave, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig

These problems are from the atcoder DP contest, and were transferred onto DMOJ. All problem statements were made by several atcoder users. As there is no access to the test data, all data is randomly generated. If there are issues with the statement or data, please contact Ninjaclasher on slack.

There is a grid with H horizontal rows and W vertical columns. Let (i, j) denote the square at the i-th row from the top and the j-th column from the left.

In the grid, N Squares (r_1, c_1), (r_2, c_2), \ldots, (r_N, c_N) are wall squares, and the others are all empty squares. It is guaranteed that Squares (1, 1) and (H, W) are empty squares.

Taro will start from Square (1, 1) and reach (H, W) by repeatedly moving right or down to an adjacent empty square.

Find the number of Taro's paths from Square (1, 1) to (H, W), modulo 10^9+7.


  • All values in input are integers.
  • 2 \le H, W \le 10^5
  • 1 \le N \le 3000
  • 1 \le r_i \le H
  • 1 \le c_i \le W
  • Squares (r_i, c_i) are all distinct.
  • Squares (1, 1) and (H, W) are empty squares.

Input Specification

The first line will contain three integers, H, W, and N.

The next N lines will each contain two integers, r_i, c_i.

Output Specification

Print the number of Taro's paths from Square (1, 1) to (H, W), modulo 10^9+7.

Sample Input 1

3 4 2
2 2
1 4

Sample Output 1


Explanation For Sample 1

There are three paths as follows:

Sample Input 2

5 2 2
2 1
4 2

Sample Output 2


Explanation For Sample 2

There may be no paths.

Sample Input 3

5 5 4
3 1
3 5
1 3
5 3

Sample Output 3


Sample Input 4

100000 100000 1
50000 50000

Sample Output 4


Explanation For Sample 4

Be sure to print the count modulo 10^9+7.


There are no comments at the moment.