Grid Paths II.


Submit solution

Points: 100 (partial)
Time limit: 2.0s
Memory limit: 512M

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

Consideremos una cuadrícula de n \times n donde la casilla superior izquierda es (1,1) y la inferior derecha es (n,n).

El objetivo es moverse desde la casilla superior izquierda hasta la inferior derecha. En cada paso, se puede avanzar una casilla a la derecha o hacia abajo. Además, hay m trampas en la cuadrícula. No se puede acceder a una casilla con una trampa.

¿Cuál es el número total de caminos posibles?

Entrada

La primera línea de entrada contiene dos enteros, n y m: el tamaño de la cuadrícula y el número de trampas.

A continuación, hay m líneas que describen las trampas. Cada línea contiene dos enteros, y y x: la ubicación de una trampa.

Se puede asumir que no hay trampas en las casillas superior izquierda e inferior derecha.

Salida

Imprime el número de caminos módulo 10^9+7.

Restricciones

  • 1 \leq n \leq 10^6
  • 1 \leq m \leq 1000
  • 1 \leq y,x \leq n

Ejemplo de Entrada

3 1
2 2

Ejemplo de Salida

2

Comments

There are no comments at the moment.