A与B做游戏。 在一个n*m的矩阵中的出发点是(1,m),终点是(n,1),规则是只能向左移动一格,向下一格或向左下移动一格,先走到终点的为winner。 A先走。
给定两个整数n和m,请返回最后的获胜者的名字(A或B)。
网上解法如下:
②里讲的是什么?为什么变成了B先走?
不想贴代码是因为代码也就那样+-*/会个语言基础都能看懂,我是想问为什么要这样?
A与B做游戏。 在一个n*m的矩阵中的出发点是(1,m),终点是(n,1),规则是只能向左移动一格,向下一格或向左下移动一格,先走到终点的为winner。 A先走。
给定两个整数n和m,请返回最后的获胜者的名字(A或B)。
网上解法如下:
②里讲的是什么?为什么变成了B先走?
不想贴代码是因为代码也就那样+-*/会个语言基础都能看懂,我是想问为什么要这样?
10 回答11.1k 阅读
15 回答8.4k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3k 阅读✓ 已解决
8 回答6.2k 阅读
2 回答2.6k 阅读✓ 已解决
其实无非就是一个递归问题,
n*m
的矩阵问题,如果横着走,就转化为n*(m-1)
的问题;如果竖着走,就转化为(n-1)*m
的问题;如果斜着走,就转化为(n-1)*(m-1)
的问题……最终转化为有着确定的胜负结果的一行或一列的问题。