莞工oj 4.马栏过河卒
题目:
思路:
这是一道DP类型题。(决策问题,同分治法解决不太一样,分治法是有联系的,而这个决策之间没什么特别联系。)
分析这道题目,由于兵只能向下或者向右走,不难发现其动态方程
dp[i][j] = dp[i-1][j] + dp[i][j-1]
也就是点i,j的路径总数是等于(i-1,j)与(i,j-1)路径总数的和。
并且i=0和j=0的行和列路径总数都是1。
障碍点(马的位置及其一步可以走到的位置)的路径总数都是0。
所以就可以解出这道题了。
一开始用python写了:
a = [0,-1,-2,-2,-1,1,2,2,1]
b = [0,2,1,-1,-2,-2,-1,1,2]
p = [[-1 for i in range(16)]for i in range(16)]
print(p)
n,m,x,y = map(int,input().split())