我的状态转移方程似乎没有问题,边界也没啥。就一很普通的程序。
然鹅,这是样例的调试数据。。。
注意f
输出(f[-1][-1])19???????
附代码
def find(m,n,x,y):
f = [[None]*m for i in range(n)]#创建列表
#设置边界
for i in range(n):
f[i][0] = 1
for i in range(m):
f[0][i] = 1
#规定控制点
f[x+1][y+2] = 0
f[x+2][y+1] = 0
f[x-1][y+2] = 0
f[x+1][y-2] = 0
f[x-2][y-1] = 0
f[x-1][y+2] = 0
f[x+2][y-1] = 0
f[x][y] = 0
#遍历
for y in range(n):
for x in range(m):
if f[y][x] == None:
f[y][x] = f[y][x-1]+f[y-1][x]#状态转移方程
return f[-1][-1]
m,n,x,y = map(int,input().split())
print(find(m+1,n+1,x,y))