这是一道BFS + DP的问题 首先计算最短路径一般都是使用BFS,这道题的难点是不但要计算出最短的长度还需要知道有多少条这样的最短路径 那么我们假设 到达 i,j−1i , j-1i,j−1的有dp[i][j−1]dp[i][j-1]dp[i][j−1]种方案,到达 i−1,ji-1,ji−1,j有dp[i−1][j]dp[i-1][j]dp[i−1][j] 方案,从这两点都能去i,j,那么有 dp[i][j]=dp[i][j−1]+dp[i−1][j]dp[i][j] = dp[i][j-1] + dp[i-1][j]dp[i][j]=dp[i][j−1]+dp[i−1][j] 因为本题有...