#2984. [NOIP1997 普及组] 街道问题

[NOIP1997 普及组] 街道问题

题目描述

设有一个NMN*M的街道(如下图):

规定行人从A(1,1)出发,在街道上只能向东或北方向行走。

如下为N3M=3N=3,M=3的街道图:

AA出发到达BB共有6条可供行走的路径:

  • A-A1-A2-A5-B
  • A-A1-A4-A5-B
  • A-A1-A4-A7-B
  • A-A3-A4-A5-B
  • A-A3-A4-A7-B
  • A-A3-A6-A7-B

若在NMN*M的街道中,设置一个矩形障碍区域(包括围住该区域的街道)不让行人通行,如图中用“*”表示的部分。

此矩形障碍区域用两对顶点坐标给出,前图中的两对顶点坐标为:(2,2),(8,4),此时从 AA出发到达BB的路径仅有两条。

程序要求:

  • 任务一:给出NMN,M后,求出所有从AA出发到达BB的路径的条数。

  • 任务二:给出NMN,M,同时再给出此街道中的矩形障碍区域的2对顶点坐标(X1,Y1X1,Y1), (X2Y2X2,Y2),然后求出此种情况下所有从AA出发到达BB的路径的条数。

如果答案太大,输出最后20位。

输入格式

第一行两个数NNMM

第二行为X1,Y1,X2,Y2X1,Y1,X2,Y2.如果是任务一,则第二行为4个0.

输出格式

输出走路方案数

样例

3 3
0 0 0 0
6
50 50
2 2 49 49
2

数据范围

  • 1N501M501 \leq N \leq 50, 1 \leq M \leq 50