问题标题: 看测试点!!!

0
0
已解决
刘意阳
刘意阳
初级天翼
初级天翼

那位大佬可以讲一下5102这题的思路,我一点思路没有

刘意阳在2022-12-14 16:27:20追加了内容

这题#2

刘意阳在2022-12-14 16:27:58追加了内容

豆可以加


0
已采纳
艾皓轩
艾皓轩
修练者
修练者

这个题主要的任务就是找到递推式:
由于兵只能向右和向下移动,所以每一个点的路径数等于它上面一个点和它左边一个点的路径数之和
f [ i ] [ j ] = f [ i − 1 ] [ j ] + f [ i ] [ j − 1 ] {f[i][j]=f[i-1][j]+f[i][j-1]}f[i][j]=f[i−1][j]+f[i][j−1]

初始条件
为了在写递推循环时不需要考虑数组小标越界问题,我们可以把以0为行数或者列数的单元格的路线数预计算出来,这样在循环时可以直接从1开始数组下标恒大于0不会越界!

首行的每个单元格若不受**控制点影响,初始化为1;若位于**控制点,赋值为0,同时后面的所有点都不可能到达,所以赋值为0
列的情况同理
f [ 0 ] [ j ] = { 1 , 不是**控制点 0 , 是**控制点及**控制点以右的点 f[0][j]=
{1,0,不是**控制点是**控制点及**控制点以右的点
{1,不是**控制点0,是**控制点及**控制点以右的点
f[0][j]={ 
1,
0,
​    
  
不是**控制点
是**控制点及**控制点以右的点
​    
 

f [ i ] [ 0 ] = { 1 , 不是**控制点 0 , 是**控制点及**控制点以下的点 f[i][0]=
{1,0,不是**控制点是**控制点及**控制点以下的点
{1,不是**控制点0,是**控制点及**控制点以下的点
f[i][0]={ 
1,
0,
​    
  
不是**控制点
是**控制点及**控制点以下的点
​    
 

限制条件
我们需要计算出**控制点,可以预先打出一张马跳动范围的横纵坐标表,然后循环判断是否满足条件后在标记数组中给该点打上标记,具体实现可以看我下面的代码
注意:不要忘了给**点自己打上标记

1
0
0
0
叶珂睿
叶珂睿
新手天翼
新手天翼

啊!我会!

采纳我就给你讲!

0
0
卢嘉懿
卢嘉懿
高级光能
高级光能

很简单,用函数即可

和过河卒差不多

0
0
0
李泽屿
李泽屿
新手启示者
新手启示者

额这节课我还没看视频

0
我要回答