牛牛准备在一个3行n列的跑道上跑步。一开始牛牛位于(1,1)。 当牛牛位于第i行第j列时,他可以的下一步最多可能有三种选择: 1. 跑到第i行第j+1列 2. 跑到第i-1行第j+1列(如果i=1则不可以这么跑)。 3. 跑到第i+1行第j+1列(如果i=3则不可以这么跑)。 跑道上有一些格子设置了路障(一个格子可能有多个路障),牛牛不能跑到路障上。现在牛牛想知道,从(1,1)到(3,n)有多少条不同的路径? 为了防止答案过大,答案对1e9+7取模。
示例1

输入

4,1,[1],[2]

输出

2

说明

在第一行第二列的位置有一个障碍
牛牛有两种跑法:
1.  (1,1)->(2,2)->(2,3)->(3,4)
2.  (1,1)->(2,2)->(3,3)->(3,4)

备注:
,数据保证(1,1)和(3,n)上没有路障。第一个参数n代表列数第二个参数m代表路障个数第三个参数和第四个参数x, y都包含m个元素,分别代表路障的行坐标和列坐标。同一个格子可能有多个路障。
加载中...