#169. 街道问题
街道问题
说明
设有一个N*M(l≤ N≤50, l≤ M≤ 50)的街道(如下图):
规定行人从A(1,1)出发,在街道上只能向东或北方向行走。
如下为N=3,M=3的街道图,从A出发到达B共有6条可供行走的路径:
若在N*M的街道中,设置一个矩形障碍区域(包括围住该区域的街道)不让行人通行,如图中用"*"表示的部分。
此矩形障碍区域用2对顶点坐标给出,前图中的2对顶点坐标为:(2,2),(8,4),此时从 A出发到达B的路径仅有两条。
程序要求:
任务一:给出N,M后,求出所有从A出发到达B的路径的条数。
任务二:给出N,M,同时再给出此街道中的矩形障碍区域的2对顶点坐标(X1,,Y1),(X2,Y2),然后求出此种情况下所有从A出发到达B的路径的条数。
输入格式
每个测试文件只包含一组测试数据,每组输入的第一行输入一个整数d(1或2)。
当d=1时,表示按照任务一输入,另起一行输入N和M。
当d=2时,表示按照任务二输入,另起一行输入N和M,再另起一行输入四个整数X1,Y1,X2,Y2。
输出格式
当执行任务一时,输出所有从A出发到达B的路径的条数。
当执行任务二时,输出此种情况下所有从A出发到达B的路径的条数。
样例
1
2 2
2